Skip to content

Commit

Permalink
chore: update README (#697)
Browse files Browse the repository at this point in the history
* chore: update README

* update per comment
  • Loading branch information
Deyuan Deng authored and supereagle committed Jan 3, 2019
1 parent 315fb77 commit 5ebdbc7
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 22 deletions.
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Expand Up @@ -45,7 +45,7 @@ Checkout a feature branch
$ git checkout -b my_feature
```

Add your commits,
Add your commits,
```
$ git commit -a -s -m "Implement an awesome feature"
```
Expand All @@ -67,4 +67,4 @@ Cyclone is written with Golang, before you commit your code, please check [Golan

### Javascript

Cyclone's web UI is developed with React, Ant Design, please read [Airbnb Javascript Style Guide](https://github.com/airbnb/javascript) if you want to contribute to frontend. Cyclone also makes use of linter tools like Prettier, ESLint, Lint-staged to enforce its code quality.
Cyclone's web UI is developed with React, Ant Design, please read [Airbnb Javascript Style Guide](https://github.com/airbnb/javascript) if you want to contribute to frontend. Cyclone also makes use of linter tools like Prettier, ESLint, Lint-staged to enforce its code quality.
49 changes: 29 additions & 20 deletions README.md
@@ -1,48 +1,57 @@
# Cyclone

<h1 align="center">
<br>
<img width="400" src="docs/images/logo.jpeg" alt="cyclone">
<br>
<br>
</h1>
<p align="center"><img src="docs/images/logo.jpeg" width="200"></p>

Cyclone is a cloud native workflow engine not only for CI/CD pipelines, but also for general workflows. It defines workflow by assembling workflow stages as DAG. As Cyclone totally bases on Kubernetes, it can be easily deployed and used.
Cyclone is a powerful workflow engine and end-to-end pipeline solution implemented with native Kubernetes resources,
with no extra dependencies. It can run anywhere Kubernetes is deployed: public cloud, on-prem or hybrid cloud.

Cyclone defines each workflow stage as a pod, and assemble them to workflow by capturing dependencies between stages as DAG.
Cyclone is architectured with a low-level workflow engine that is application agnostic, offering capabilities like
workflow DAG scheduling, resource lifecycle management and most importantly, a pluggable and extensible framework for
extending the core APIs. Above which, Cyclone provides built-in support for high-level functionalities, with CI/CD
pipelines and AI DevOps being two notable examples, and it's possible expand to more use cases as well.

With Cyclone, users end up with the flexibility of workflow orchestration and the usability of complete solutions.

## Features
- **Kubernetes Native**: Totally based on Kubernetes without any other dependencies..
- **Workflow Engine**: Supports CI/CD pipelines, AI pipelines and any other general workflows.
- **DAG**: Cyclone supports any DAG workflow.
- **Pluggability**: Cyclone can easily integrate with external systems, such as SCM, Docker Registry, S3, etc.
- **Triggers**: Workflow can be triggered by time schedule, webhooks.
- **Controllable**: Execution of workflow can be paused, resumed or cancelled.
- **Multi-Tenant**: Cyclone supports multi-tenant.
- **Garbadge Collection**: Cleanup after workflow finished and results collected.

- DAG graph scheduling: Cyclone supports DAG workflow execution
- Parameterization: stage (unit of execution) can be parameterized to maximize configuration reuse
- External dependencies: external systems like SCM, docker registry, S3 can be easily integrated with Cyclone
- Triggers: Cyclone supports cron and webhook trigger today, with upcoming support for other types of triggers
- Controllability: workflow execution can be paused, resumed, retried or cancelled
- Multi-cluster: workflow can be executed in different clusters from where Cyclone is running
- Multi-tenant: resources manifests and workflow executions are grouped and isolated per tenant
- Garbadge Collection: automatic resource cleanup after workflow execution
- Logging: logs are persisted and indpendent from workflow lifecycle, enabling offline inspection
- Built-in Pipeline: curated DAG templates and stage runtimes for running DevOps pipelines

## Quick Start

Build images

```bash
$ make container
```

Deploy to Kubernetes cluster

```bash
$ kubectl create -f manifests/cyclone.yaml
```

## Community

- **Slack**: Join [Cyclone Community](https://caicloud-cyclone.slack.com/join/signup) for disscussions and ask questions.
- **Slack**: Join [Cyclone Community](https://caicloud-cyclone.slack.com/join/signup) for disscussions and posting questions.

## Roadmap

[Cyclone Roadmap](./docs/ROADMAP.md)

## History
## Contributing

If you are interested in contributing to Cyclone, please checkout [CONTRIBUTING.md](./CONTRIBUTING.md).
We welcome any code or non-code contribution!

Before v0.9.0, Cyclone focuses on CI/CD pipelines and run pipelines in both Docker and Kubernetes.
## Licensing

From v0.9.0, Cyclone has been totally refactored, new Cyclone not only aims at CI/CD pipeline, but also provides a general workflow engine. Compared with previous one, it's more flexible and powerful.
Cyclone is licensed under the Apache License, Version 2.0. See [LICENSE](./LICENSE) for the full license text.

0 comments on commit 5ebdbc7

Please sign in to comment.