Skip to content

Instantly share code, notes, and snippets.

View itsMagondu's full-sized avatar
🎯
Focusing

Samuel Magondu Njenga itsMagondu

🎯
Focusing
View GitHub Profile
@itsMagondu
itsMagondu / c3test.html
Created September 3, 2015 08:28
This is a test chart using c3
<head>
<!-- Load c3.css -->
<link href="http://mamase.org/static/css/c3.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="chart"></div>
<!-- Load d3.js and c3.js -->
<script src="http://mamase.org/static/js/d3.js" charset="utf-8"></script>
<script src="http://mamase.org/static/js/c3.js"></script>
<script>
@itsMagondu
itsMagondu / ingress-nginx.tf
Last active August 20, 2019 09:57
ingress-nginx teraform setup script
resource "kubernetes_namespace" "ingress_nginx" {
depends_on = ["google_container_node_pool.primary_preemptible_nodes"]
metadata {
name = "ingress-nginx"
labels = {
"app.kubernetes.io/name" = "ingress-nginx"
"app.kubernetes.io/part-of" = "ingress-nginx"
}
}
}
@itsMagondu
itsMagondu / metabase.tf
Last active October 1, 2020 21:29
A terraform script to setup metabase on GKE
resource "kubernetes_deployment" "metabase" {
metadata {
name = "metabase"
labels = {
app = "metabase"
}
namespace = "${kubernetes_namespace.sandbox.metadata.0.name}"
}
spec {
replicas = 1
@itsMagondu
itsMagondu / gke_cluster.tf
Last active August 20, 2019 10:14
Setup a Kubernetes cluster on GCP. Initialize the terraform kubernetes provider too.
resource "google_container_cluster" "primary" {
project = "${var.project_id}"
name = "demo-cluster"
location = "${var.zone}"
remove_default_node_pool = true
initial_node_count = 1
master_auth {
username = "${var.k8s_username}"
variable project_id {}
variable cloudsql_proxy_sa_key {}
variable zone {}
variable k8s_username {}
variable k8s_password {}
variable db_instance_connection_name {}
variable metabase_db_name {}
variable metabase_db_user {}
variable metabase_db_password {}
@itsMagondu
itsMagondu / sql-outputs.tf
Created August 20, 2019 10:52
Terraform outputs for CloudSQL
output "metabase_db_name" {
value = "${google_sql_database.metabase_database.name}"
}
output "db_instance_connection_name" {
value = "${google_sql_database_instance.demo_instance.connection_name}"
}
@itsMagondu
itsMagondu / cloudsql-variables.tf
Created August 20, 2019 10:54
Terraform input variables for CloudSQL
variable project_id {}
variable region {}
variable metabase_db_user {}
variable metabase_db_password {}
@itsMagondu
itsMagondu / cloudsql-instance.tf
Created August 20, 2019 10:55
Setup CloudSQL db using terraform
resource "google_sql_database_instance" "demo_instance" {
project = "${var.project_id}"
name = "demo-db"
region = "${var.region}"
database_version = "POSTGRES_9_6"
settings {
tier = "db-f1-micro"
disk_autoresize = true
@itsMagondu
itsMagondu / gcp-outputs.tf
Created August 20, 2019 10:57
Terraform outputs for GCP project
output "project_id" {
value = "${google_project.demo_project.project_id}"
}
output "cloudsql_proxy_sa_key" {
value = "${google_service_account_key.cloudsql_proxy_sa_key.private_key}"
}
@itsMagondu
itsMagondu / gcp-project.tf
Created August 20, 2019 10:58
Create a GCP project using terraform
provider "google" {
project = "${var.project}"
zone = "${var.zone}"
}
resource "google_project" "demo_project" {
name = "${var.project}"
project_id = "${var.project}-id"
org_id = "${var.org_id}"
billing_account = "${var.billing_id}"