A user-friendly integrated development platform on GCP.
- A Mac machine.
- A Google Cloud Platform(GCP) project that's enabled Cloud Build API.
- A Google Kubernetes Engine(GKE) cluster that's enabled
Allow full access to all Cloud APIs
for node pools.
- Clone Invoker to your local laptop.
mkdir -p ~/zlosure/local-files
git clone https://github.com/zlosure/invoker.git ~/zlosure/local-files/invoker
cd ~/zlosure/local-files/invoker
mkdir ./credentials
-
Create GKE service account as owner role and download the keyfile to
./credentials
-
Follow the instructions by running
bin/invoker -a init
- You should get a URL for console at the end, from where you can interaction your cluster.
P.S. If your cluster admin already set up the cluster for you. You can directly run
bin/invoker -a bootstrap -n <your-dev-ns> -t local
- [Jul. 13 2018] File sync plan is decided.
- [Jul. 19 2018] Use
Docker for Mac
to offload the need to interact with xhyve directly. - [Aug. 1 2018] Able to pick up local changes and build docker image in real time from the cloud.
- [Aug. 14 2018] Set up a Pedestal web service and able to run
kubectl
inside of it. Also, decide repo nameinvoker
. - [Aug. 28 2018] Split personal-nfs-server and deployment per namespace and able to run basic k8s, helm, docker operations based on local codebase.
- [Sep. 11 2018] De-couple deployment artifacts from projects by splitting Helm chart source code (as a GitHub repo) and chart repository (as a GCS bucket).
- [Sep. 19 2018] Start up a new project and cluster within 10 mins and no big blocker!
- [Sep. 21 2018] Replace scripts with Ansible.
- [Oct. 9 2018] Package helm charts recursively with dependencies.
- [Oct. 11 2018] Build docker image along side chart packaging.
- [Oct. 16 2018] Automate project with dependencies helm install process(package charts, image build, and helm deploy).
- [Oct. 18 2018] User onboarding.
- [Oct. 31 2018] Invoker self-deploys to cluster as webservice, and installs Kafka/Zookeeper stack by a HTTP request.
- [Nov. 12 2018] Introduce the beloved Cloud Build and move build process out of Invoker container.
- [Nov. 26 2018] Install/Upgrade/Delete actions through CLI, and efficiency looks promising (Invoker upgrade takes 1.5 min).
- [Nov. 29 2018] Install/Upgrade/Delete actions through HTTP request.
POST :invoker/invoke
Content-Type: application/json
{
"action": "install",
"target": "kafka",
"namespace": "szhou"
}
- [Dec. 5 2018] Split bootstrapping process for cluster and local environment.
- [Dec. 14 2018] Chart role refactoring.
- [Dec. 19 2018] Inspect role pulled out.
- [Dec. 28 2018] Connect console (a reagent clojurescript project) with invoker.
- [Jan. 10 2018] Automate configuration steps, move invoker/console image to docker hub, and start invoker/console during cluster bootstrap process.
- [Jan. 18 2018] Create different chart packages based on charts branch name for the same chart version.
- [Feb. 6 2018] Start to clean up and prepare a demo.
- [Feb. 8 2018] New UI.
- [Feb. 15 2018] First demo video. https://www.youtube.com/watch?v=2dS17sjN_j8