Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/argoproj/argo-ci
Continuous integration and delivery for Kubernetes powered by Argo workflows.
https://github.com/argoproj/argo-ci
continuous-deployment continuous-integration kubernetes
Last synced: 3 months ago
JSON representation
Continuous integration and delivery for Kubernetes powered by Argo workflows.
- Host: GitHub
- URL: https://github.com/argoproj/argo-ci
- Owner: argoproj
- License: apache-2.0
- Archived: true
- Created: 2017-12-19T21:57:55.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-04-27T21:36:58.000Z (over 1 year ago)
- Last Synced: 2024-07-31T07:19:07.117Z (5 months ago)
- Topics: continuous-deployment, continuous-integration, kubernetes
- Language: TypeScript
- Homepage:
- Size: 384 KB
- Stars: 200
- Watchers: 24
- Forks: 26
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Roadmap: ROADMAP.md
Awesome Lists containing this project
- awesome - argo-ci - Continuous integration and delivery for Kubernetes powered by Argo workflows. (TypeScript)
README
**THIS PROJECT IS NO LONGER MAINTAINED. PLEASE TAKE A LOOK AT ARGO EVENTS INSTEAD (https://github.com/argoproj/argo-events)**
# Argo CI
Argo CI is a continuous integration and deployment system powered by [Argo](http://argoproj.io) workflow engine for Kubernetes. Argo CI provides integration with SCM
( currently only Github is supported) and automatically triggers CI workflow defined using [Argo YAML DSL](https://applatix.com/open-source/argo/docs/argo_v2_yaml.html).## Deploy Argo CI to your kubernetes cluster
Argo CI might be installed using Helm:
```
helm repo add argo https://argoproj.github.io/argo-helm/
helm install argo/argo-ci --name argo-ci
```The `argo-ci` helm chart installs three deployments:
- Argo workflow controller
- Argo UI deployment
- Argo CI deploymentArgo UI and Argo CI are available externally via load balancer kubernetes services.
## Configure integration with Github
Following steps are required to configure integration:
* For security reasons Argo CI configuration UI is not available externally. Easiest way to access it is to use port forwarding: `kubectl port-forward 8002:8002`.
UI should be available via http://localhost:8002.
* Configure external Argo UI URL using Argo CI configuration UI.
* Add required repositories using Argo UI:![Configuration UI](docs/configuration.png "Configuration UI")
* Create webhook using [Github UI](https://developer.github.com/webhooks/creating/#setting-up-a-webhook):
* set Payload URL to `http/api/webhook/github`
* set Content Type to `application/json`
* set your Secret token values
* Create build workflow and save at `.argo-ci/ci.yaml` inside of your project repository. If workflow has parameters named `revision` and `repo` then Argo CI will automatically set values for these parameters.## Build and debug
To build project locally install [nodejs](https://nodejs.org) and [yarn](https://yarnpkg.com). Once you install npm dependencies using `yarn install` you are ready to build and
debug project locally:* Execute `yarn build` to build project. Command stores build results in `./dist` directory.
* Execute `yarn start` to start service locally.