{"id":15713178,"url":"https://github.com/nearform/initium-cli","last_synced_at":"2025-05-07T08:13:58.822Z","repository":{"id":165942081,"uuid":"613823271","full_name":"nearform/initium-cli","owner":"nearform","description":"CLI tool for the Initium project","archived":false,"fork":false,"pushed_at":"2023-12-01T15:28:10.000Z","size":51396,"stargazers_count":4,"open_issues_count":22,"forks_count":4,"subscribers_count":40,"default_branch":"main","last_synced_at":"2025-05-07T08:13:45.480Z","etag":null,"topics":["devops"],"latest_commit_sha":null,"homepage":"https://initium.nearform.com","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nearform.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-14T10:45:00.000Z","updated_at":"2024-05-09T07:54:22.000Z","dependencies_parsed_at":"2023-09-05T03:50:32.892Z","dependency_job_id":"5657cb9c-2020-45fd-8e0e-1fd3fbfb3164","html_url":"https://github.com/nearform/initium-cli","commit_stats":null,"previous_names":["nearform/k8s-kurated-addons-cli"],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Finitium-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Finitium-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Finitium-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Finitium-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nearform","download_url":"https://codeload.github.com/nearform/initium-cli/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252839296,"owners_count":21812089,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devops"],"created_at":"2024-10-03T21:21:44.161Z","updated_at":"2025-05-07T08:13:58.801Z","avatar_url":"https://github.com/nearform.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Initium project CLI\n\nA single static binary that can run on any CI to build your code and deploy it in a single step.\n\nAll with a nice development workflow in mind like ephemeral environment for your PRs.\n\n### Running the CLI\n\nThe CLI is currently published on [NPM](https://www.npmjs.com/package/initium). You can run it using\n\n```\nnpx initium\n```\n\nThat will install the Initium CLI in your folder's `node_modules`.\n\nWe recommend you not to try installing the CLI globally if you don't use a Node.js version manager (like `nvm`), as you can run into permission errors.\n\n### Pre-requisites\n\n1. GoLang\n\n    You can install it with your prefered package manager or usign asfd with `asdf install`.\n\n2. Docker (or similar solutions)  \n\n    Here you can find a list of possible candidates:\n    - [Docker](https://docs.docker.com/engine/install/) ( cross-platform, paid solution )\n    - [Rancher Desktop](https://rancherdesktop.io/) ( cross-platform, FOSS )\n    - [lima](https://github.com/lima-vm/lima) + [nerdctl](https://github.com/containerd/nerdctl) ( macOS only )\n\n### Build the executable\n\nIn order to build the executable you simply need to run \n\n```bash\nmake build\n```\n\nYou will be able to run the executable from \n\n```bash\n./bin/initium\n```\n\n### Setup local environment\n\nThese are the environment variables that you have to set in order to use the onmain, onbranch commands from your local environment\n\n```\nexport INITIUM_REGISTRY_PASSWORD=\"\u003cgithub_pat\u003e\"\nexport INITIUM_REGISTRY_USER=\"\u003cgithub_user\u003e\"\n```\n\nand\n\n```\nexport INITIUM_CLUSTER_ENDPOINT=$(kubectl config view -o jsonpath='{.clusters[?(@.name == \"kind-initium-platform\")].cluster.server}')\nexport INITIUM_CLUSTER_TOKEN=$(kubectl get secrets initium-cli-token -o jsonpath=\"{.data.token}\" | base64 -d)\nexport INITIUM_CLUSTER_CA_CERT=$(kubectl get secrets initium-cli-token -o jsonpath=\"{.data.ca\\.crt}\" | base64 -d)\n```\n\n### Supported Application Runtimes\n\nFollowing we have a matrix related to which application runtime our CLI is currently compatible with. For each one of them a Dockerfile template is being used in order to provide an easy way to build and deploy the application to a Kubernetes cluster. \n\n| Application Runtimes | Supported          |\n|----------------------|:------------------:|\n| [Nodejs](https://github.com/nearform/initium-cli/blob/main/assets/docker/Dockerfile.node.tmpl) | :white_check_mark: |\n| [GoLang](https://github.com/nearform/initium-cli/blob/main/assets/docker/Dockerfile.go.tmpl) | :white_check_mark: |\n| Python               | Coming Soon        |\n| More will be added...|                    |\n\n\n### CI Integrations\n\nThe matrix below gives an overview of the integration status of our CLI with CI platforms. CLI is able to create automatically `build` and `deploy` pipelines in order to enable CICD process for the application it is used with. Related template files are being used to cover different process steps. \n\n| CI Systems           | Supported          |\n|----------------------|:------------------:|\n| [GitHub Actions](https://github.com/nearform/initium-cli/tree/main/assets/github) | :white_check_mark: |\n| Gitlab CI            | Coming Soon        |\n| Azure Devops         | Coming Soon        |\n| More will be added...|                    |\n\n\nEncrypt your secret with:\n\n```\n./initium secrets encrypt --publicKey age1zmh77nlvddsz55q5l67d4ufwewvyhentlku9z90t969szd2lnghslnlese --secret \u003cyour secret\u003e\n```\n\nor if it's not a string\n\n```\n./initium secrets encrypt --publicKey age1zmh77nlvddsz55q5l67d4ufwewvyhentlku9z90t969szd2lnghslnlese --base64secret \u003cyour secret in base64\u003e\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnearform%2Finitium-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnearform%2Finitium-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnearform%2Finitium-cli/lists"}