Powerful workflow engine and end-to-end pipeline solutions implemented with native Kubernetes resources. https://cyclone.dev

Overview

Cyclone

Build Status Go Report Card CII Best Practices Coverage Status GoDoc License

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 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 is possible to expand to more use cases as well.

With Cyclone, users end up with the flexibility of workflow orchestration and the usability of complete CI/CD and AI DevOps solutions.

Features

  • DAG graph scheduling: Cyclone supports DAG workflow execution
  • Parameterization: stage (unit of execution) can be parameterized to maximize configuration reuse
  • External integration: 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-tenancy: resource manifests and workflow executions are grouped and isolated per tenant
  • Garbage Collection: automatic resource cleanup after workflow execution
  • Logging: logs are persisted and independent from workflow lifecycle, enabling offline inspection
  • Built-in Pipeline: curated DAG templates and stage runtimes for running DevOps pipelines for both regular software and AI development
  • Delegation Workload: Delegate some complicated stage to be executed in external systems, instead of Cyclone.

Quick Start

Cyclone has been tested with Kubernetes 1.12, 1.13 and 1.14.

Make sure Helm with a version higher than 2.10 is installed (install guide), then install Cyclone with:

$ helm install --name cyclone --namespace cyclone-system ./manifests/cyclone-public

If you want to configure the installation or want to install from source code, please refer to Cyclone Install Guide.

Then you can access Cyclone with kubectl or Cyclone web (http://:30022).

Community

  • Slack: Join Cyclone Community for disscussions and posting questions. If you are not yet a member of Cyclone Slack, you may sign up here.

Aditional Tools

  • cycli Cyclone CLI interface

Roadmap

Cyclone Roadmap

Contributing

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

Licensing

Cyclone is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Comments
  • fix(resolver::git): refine repos cloning and fix `git checkout`

    fix(resolver::git): refine repos cloning and fix `git checkout`

    What this PR does / why we need it:

    Simplify the way we clone repos, and don't pass -f to git checkout so that git won't fail silently.

    Manual validation:

    branch:

    Trying to acquire lock and pull resource
    Got the lock, start to pulling...
    Clone refs/heads/master...
    Initialized empty Git repository in /workspace/data/.git/
    From http://<redacted>/root/golangtest
     * branch            master     -> FETCH_HEAD
     * [new branch]      master     -> origin/master
    total 1
    drwxr-xr-x 1 root root   3 Oct 27 14:30 .
    drwxr-xr-x 1 root root   2 Oct 27 14:30 ..
    drwxr-xr-x 1 root root  12 Oct 27 14:30 .git
    -rw-r--r-- 1 root root 249 Oct 27 14:30 Dockerfile
    drwxr-xr-x 1 root root   2 Oct 27 14:30 helloworld
    Collect commit id to result file /__result__ ...
    LastCommitID:c1078d2b17aa201f26e2daf4d74437b5df2eb169
    Remove the created lock folder
    

    tag

    Trying to acquire lock and pull resource
    Got the lock, start to pulling...
    Clone refs/tags/v0.0.1...
    Initialized empty Git repository in /workspace/data/.git/
    From http://<redacted>/root/golangtest
     * tag               v0.0.1     -> FETCH_HEAD
    total 1
    drwxr-xr-x 1 root root   3 Oct 27 14:33 .
    drwxr-xr-x 1 root root   2 Oct 27 14:33 ..
    drwxr-xr-x 1 root root  12 Oct 27 14:33 .git
    -rw-r--r-- 1 root root 249 Oct 27 14:33 Dockerfile
    drwxr-xr-x 1 root root   2 Oct 27 14:33 helloworld
    Collect commit id to result file /__result__ ...
    LastCommitID:c1078d2b17aa201f26e2daf4d74437b5df2eb169
    Remove the created lock folder
    

    pull request

    Trying to acquire lock and pull resource
    Got the lock, start to pulling...
    Merge refs/merge-requests/1/head to master...
    Cloning into 'data'...
    POST git-upload-pack (192 bytes)
    POST git-upload-pack (201 bytes)
    From http://<redacted>/root/golangtest
     * branch            refs/merge-requests/1/head -> FETCH_HEAD
    Automatic merge went well; stopped before committing as requested
    total 1
    drwxr-xr-x 1 root root   3 Oct 27 14:37 .
    drwxr-xr-x 1 root root   3 Oct 27 14:37 ..
    drwxr-xr-x 1 root root  16 Oct 27 14:37 .git
    -rw-r--r-- 1 root root 250 Oct 27 14:37 Dockerfile
    drwxr-xr-x 1 root root   2 Oct 27 14:37 helloworld
    Collect commit id to result file /__result__ ...
    LastCommitID:c1078d2b17aa201f26e2daf4d74437b5df2eb169
    Remove the created lock folder
    

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @zhujian7

    Release note:

    NONE
    
    size/M release-note-none lgtm approved caicloud-cla: yes 
    opened by knight42 19
  • refactor(svn): use alpine base image for svn

    refactor(svn): use alpine base image for svn

    What this PR does / why we need it:

    Unify base image to alpine:3.8 (Fix https://github.com/caicloud/cyclone/pull/1364#pullrequestreview-343867201) , and locale setting is no longer needed in the alpine, related PR: https://github.com/caicloud/cyclone/pull/1341.

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @supereagle @hyy0322

    Release note:

    NONE
    
    size/S release-note-none lgtm approved caicloud-cla: yes 
    opened by zhujian7 17
  • 404 page not found

    404 page not found

    When i register worker node to master use curl command: curl -X POST -H "Content-Type: application/json" -d '{ "name": "myTestCloud", "type": "Docker", "docker": { "host": "unix:///var/run/docker.sock" } }' 'http://cyclone.kt.u51-inc.com/api/v1/clouds' I got this error: 404 Page Not Found

    lifecycle/rotten 
    opened by allensimonlv 16
  • Proposal: Reduce the components for simple architecture

    Proposal: Reduce the components for simple architecture

    Current components

    • Clair + Postgres: for image security, not needed any more
    • Kafka + Zookeeper: for record real-time log
    • ETCD: for the queue of jobs
    • MongoDB: for data persistence

    Target

    Only keep the MongoDB for data persistence, and remove all other components.

    Solution

    • ~ETCD~: Use MongoDB for the queue of jobs, please refer to db.collection.findAndModify(). Investigation in #286
    • ~Kafka + Zookeeper~: The record log is stored in file, if want to get the real-time log, watch the change of the file content. Investigation in #288
    • ~Clair + Postgres~: Can be directly removed as image security is not needed any more.

    Architecture

    image

    kind/enhancement lifecycle/stale 
    opened by supereagle 15
  • fix: overall last transition time not correct

    fix: overall last transition time not correct

    What this PR does / why we need it:

    Fix overall last transition time not correct

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @supereagle @hyy0322

    Release note:

    NONE
    
    size/S release-note-none lgtm approved caicloud-cla: yes 
    opened by zhujian7 14
  • fix: connection refused should not block close cluster

    fix: connection refused should not block close cluster

    What this PR does / why we need it:

    Add your description

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @hyy0322 @supereagle

    Release note:

    NONE
    
    size/M release-note-none lgtm approved caicloud-cla: yes 
    opened by zhujian7 13
  • feat: support arm64

    feat: support arm64

    What this PR does / why we need it:

    Add your description

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @supereagle @hyy0322 @liwandaniel

    Release note:

    NONE
    
    size/L release-note-none lgtm approved caicloud-cla: yes 
    opened by zhujian7 12
  • chore: normalize makefile

    chore: normalize makefile

    What this PR does / why we need it:

    • change REPOSITORIES to REPOSITORY
    • limit CPU while building

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @supereagle @hyy0322

    Release note:

    NONE
    
    size/L release-note-none lgtm approved caicloud-cla: yes 
    opened by zhujian7 12
  • chore: add mount propagation

    chore: add mount propagation

    What this PR does / why we need it:

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @zhujian7

    Release note:

    NONE
    
    size/XS release-note-none lgtm approved caicloud-cla: yes 
    opened by cd1989 12
  • fix: workflowrun limits problem

    fix: workflowrun limits problem

    What this PR does / why we need it:

    WorkflowRun in the limited length queue doesn't get refreshed successfully when cache is resynced.

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to # https://github.com/caicloud/clever-quality/issues/409

    Special notes for your reviewer:

    /cc @supereagle

    Release note:

    NONE
    
    size/L release-note-none lgtm approved caicloud-cla: yes 
    opened by cd1989 12
  • fix: add workflow name info for pods created by cyclone

    fix: add workflow name info for pods created by cyclone

    What this PR does / why we need it:

    Add workflow name info for pods created by cyclone

    Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

    Fixes #

    Reference to #

    Special notes for your reviewer:

    /cc @your-reviewer

    Release note:

    NONE
    
    size/L release-note-none lgtm approved caicloud-cla: yes 
    opened by zhujian7 11
  • chore(deps): bump express from 4.16.4 to 4.18.2 in /web

    chore(deps): bump express from 4.16.4 to 4.18.2 in /web

    Bumps express from 4.16.4 to 4.18.2.

    Release notes

    Sourced from express's releases.

    4.18.2

    4.18.1

    • Fix hanging on large stack of sync routes

    4.18.0

    ... (truncated)

    Changelog

    Sourced from express's changelog.

    4.18.2 / 2022-10-08

    4.18.1 / 2022-04-29

    • Fix hanging on large stack of sync routes

    4.18.0 / 2022-04-25

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps): bump qs from 6.4.0 to 6.4.1 in /web

    chore(deps): bump qs from 6.4.0 to 6.4.1 in /web

    Bumps qs from 6.4.0 to 6.4.1.

    Changelog

    Sourced from qs's changelog.

    6.4.1

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Fix] fix for an impossible situation: when the formatter is called with a non-string value
    • [Fix] use safer-buffer instead of Buffer constructor
    • [Fix] utils.merge: avoid a crash with a null target and an array source
    • [Fix] utils.merge`: avoid a crash with a null target and a truthy non-array source
    • [Fix] stringify: fix a crash with strictNullHandling and a custom filter/serializeDate (#279)
    • [Fix] utils: merge: fix crash when source is a truthy primitive & no options are provided
    • [Fix] when parseArrays is false, properly handle keys ending in []
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [Refactor] use cached Array.isArray
    • [Refactor] stringify: Avoid arr = arr.concat(...), push to the existing instance (#269)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] Clarify the need for "arrayLimit" option
    • [meta] fix README.md (#399)
    • [meta] Clean up license text so it’s properly detected as BSD-3-Clause
    • [meta] add FUNDING.yml
    • [actions] backport actions from main
    • [Tests] remove nonexistent tape option
    • [Dev Deps] backport from main
    Commits
    • 486aa46 v6.4.1
    • 727ef5d [Fix] parse: ignore __proto__ keys (#428)
    • cd1874e [Robustness] stringify: avoid relying on a global undefined (#427)
    • 45e987c [readme] remove travis badge; add github actions/codecov badges; update URLs
    • 90a3bce [meta] fix README.md (#399)
    • 9566d25 [Fix] fix for an impossible situation: when the formatter is called with a no...
    • 74227ef Clean up license text so it’s properly detected as BSD-3-Clause
    • 35dfb22 [actions] backport actions from main
    • 7d4670f [Dev Deps] backport from main
    • 0485440 [Fix] use safer-buffer instead of Buffer constructor
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps): bump decode-uri-component from 0.2.0 to 0.2.2 in /web

    chore(deps): bump decode-uri-component from 0.2.0 to 0.2.2 in /web

    Bumps decode-uri-component from 0.2.0 to 0.2.2.

    Release notes

    Sourced from decode-uri-component's releases.

    v0.2.2

    • Prevent overwriting previously decoded tokens 980e0bf

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.1...v0.2.2

    v0.2.1

    • Switch to GitHub workflows 76abc93
    • Fix issue where decode throws - fixes #6 746ca5d
    • Update license (#1) 486d7e2
    • Tidelift tasks a650457
    • Meta tweaks 66e1c28

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.1

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps): bump css-what from 2.1.2 to 2.1.3 in /web

    chore(deps): bump css-what from 2.1.2 to 2.1.3 in /web

    Bumps css-what from 2.1.2 to 2.1.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    size/XS do-not-merge/release-note-label-needed dependencies javascript 
    opened by dependabot[bot] 2
  • chore(deps-dev): bump moment from 2.24.0 to 2.29.4 in /web

    chore(deps-dev): bump moment from 2.24.0 to 2.29.4 in /web

    Bumps moment from 2.24.0 to 2.29.4.

    Changelog

    Sourced from moment's changelog.

    2.29.4

    • Release Jul 6, 2022
      • #6015 [bugfix] Fix ReDoS in preprocessRFC2822 regex

    2.29.3 Full changelog

    • Release Apr 17, 2022
      • #5995 [bugfix] Remove const usage
      • #5990 misc: fix advisory link

    2.29.2 See full changelog

    • Release Apr 3 2022

    Address https://github.com/moment/moment/security/advisories/GHSA-8hfj-j24r-96c4

    2.29.1 See full changelog

    • Release Oct 6, 2020

    Updated deprecation message, bugfix in hi locale

    2.29.0 See full changelog

    • Release Sept 22, 2020

    New locales (es-mx, bn-bd). Minor bugfixes and locale improvements. More tests. Moment is in maintenance mode. Read more at this link: https://momentjs.com/docs/#/-project-status/

    2.28.0 See full changelog

    • Release Sept 13, 2020

    Fix bug where .format() modifies original instance, and locale updates

    2.27.0 See full changelog

    • Release June 18, 2020

    Added Turkmen locale, other locale improvements, slight TypeScript fixes

    2.26.0 See full changelog

    • Release May 19, 2020

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    size/S do-not-merge/release-note-label-needed dependencies javascript 
    opened by dependabot[bot] 2
  • chore(deps): bump axios from 0.19.0 to 0.21.2 in /web

    chore(deps): bump axios from 0.19.0 to 0.21.2 in /web

    Bumps axios from 0.19.0 to 0.21.2.

    Release notes

    Sourced from axios's releases.

    v0.21.2

    0.21.2 (September 4, 2021)

    Fixes and Functionality:

    • Updating axios requests to be delayed by pre-emptive promise creation (#2702)
    • Adding "synchronous" and "runWhen" options to interceptors api (#2702)
    • Updating of transformResponse (#3377)
    • Adding ability to omit User-Agent header (#3703)
    • Adding multiple JSON improvements (#3688, #3763)
    • Fixing quadratic runtime and extra memory usage when setting a maxContentLength (#3738)
    • Adding parseInt to config.timeout (#3781)
    • Adding custom return type support to interceptor (#3783)
    • Adding security fix for ReDoS vulnerability (#3980)

    Internal and Tests:

    • Updating build dev dependancies (#3401)
    • Fixing builds running on Travis CI (#3538)
    • Updating follow rediect version (#3694, #3771)
    • Updating karma sauce launcher to fix failing sauce tests (#3712, #3717)
    • Updating content-type header for application/json to not contain charset field, according do RFC 8259 (#2154)
    • Fixing tests by bumping karma-sauce-launcher version (#3813)
    • Changing testing process from Travis CI to GitHub Actions (#3938)

    Documentation:

    • Updating documentation around the use of AUTH_TOKEN with multiple domain endpoints (#3539)
    • Remove duplication of item in changelog (#3523)
    • Fixing gramatical errors (#2642)
    • Fixing spelling error (#3567)
    • Moving gitpod metion (#2637)
    • Adding new axios documentation website link (#3681, #3707)
    • Updating documentation around dispatching requests (#3772)
    • Adding documentation for the type guard isAxiosError (#3767)
    • Adding explanation of cancel token (#3803)
    • Updating CI status badge (#3953)
    • Fixing errors with JSON documentation (#3936)
    • Fixing README typo under Request Config (#3825)
    • Adding axios-multi-api to the ecosystem file (#3817)
    • Adding SECURITY.md to properly disclose security vulnerabilities (#3981)

    Huge thanks to everyone who contributed to this release via code (authors listed below) or via reviews and triaging on GitHub:

    ... (truncated)

    Changelog

    Sourced from axios's changelog.

    0.21.2 (September 4, 2021)

    Fixes and Functionality:

    • Updating axios requests to be delayed by pre-emptive promise creation (#2702)
    • Adding "synchronous" and "runWhen" options to interceptors api (#2702)
    • Updating of transformResponse (#3377)
    • Adding ability to omit User-Agent header (#3703)
    • Adding multiple JSON improvements (#3688, #3763)
    • Fixing quadratic runtime and extra memory usage when setting a maxContentLength (#3738)
    • Adding parseInt to config.timeout (#3781)
    • Adding custom return type support to interceptor (#3783)
    • Adding security fix for ReDoS vulnerability (#3980)

    Internal and Tests:

    • Updating build dev dependencies (#3401)
    • Fixing builds running on Travis CI (#3538)
    • Updating follow redirect version (#3694, #3771)
    • Updating karma sauce launcher to fix failing sauce tests (#3712, #3717)
    • Updating content-type header for application/json to not contain charset field, according do RFC 8259 (#2154)
    • Fixing tests by bumping karma-sauce-launcher version (#3813)
    • Changing testing process from Travis CI to GitHub Actions (#3938)

    Documentation:

    • Updating documentation around the use of AUTH_TOKEN with multiple domain endpoints (#3539)
    • Remove duplication of item in changelog (#3523)
    • Fixing grammatical errors (#2642)
    • Fixing spelling error (#3567)
    • Moving gitpod mention (#2637)
    • Adding new axios documentation website link (#3681, #3707)
    • Updating documentation around dispatching requests (#3772)
    • Adding documentation for the type guard isAxiosError (#3767)
    • Adding explanation of cancel token (#3803)
    • Updating CI status badge (#3953)
    • Fixing errors with JSON documentation (#3936)
    • Fixing README typo under Request Config (#3825)
    • Adding axios-multi-api to the ecosystem file (#3817)
    • Adding SECURITY.md to properly disclose security vulnerabilities (#3981)

    Huge thanks to everyone who contributed to this release via code (authors listed below) or via reviews and triaging on GitHub:

    ... (truncated)

    Commits
    Maintainer changes

    This version was pushed to npm by jasonsaayman, a new releaser for axios since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    size/M do-not-merge/release-note-label-needed dependencies javascript 
    opened by dependabot[bot] 2
Releases(v1.0.3-beta)
  • v1.0.3-beta(Feb 5, 2021)

  • v1.2.0(Jan 28, 2021)

    • fix(webhook): only set PRRef label if wfr is trigger by PR
    • fix(github): use BasicAuthTransport
    • fix(workflowrun): ensure workflowRun controller return immediately after updating
    Source code(tar.gz)
    Source code(zip)
  • v1.2.0-rc(Jan 15, 2021)

    • Feat(webhook): cancel previous builds
    • Feat(github): retry CreateStatus
    • Fix(sonarqube): support java projects with multiple modules
    • Refactor(*): correct notification url & switch to webhook url template
    Source code(tar.gz)
    Source code(zip)
  • v1.0.4-alpha(Jan 13, 2021)

    • Fix(resolver::git): refine repos cloning and fix git checkout (#1514)
    • Feat(controllers): make resyncPeriod configurable (#1519) (#1521)
    • Feat(github): retry CreateStatus (#1544)
    • Feat(server): auto cancel previous builds triggered by PR (#1554)
    • Fix(sonarqube): support java projects with multiple modules (#1557)
    Source code(tar.gz)
    Source code(zip)
  • v1.2.0-alpha.3(Dec 28, 2020)

  • v1.2.0-alpha.2(Dec 16, 2020)

  • v1.2.0-alpha(Dec 3, 2020)

    Feature:

    • Support sbt accelerate (#1481)
    • Make resyncPeriod configurable (#1519)
    • Be able to specify extra labels or annotations of pod in stage (#1524)
    • Retry creating pod on QuotaExceed error until timeout (#1528)

    Refactor:

    • Make coordinator independent of docker (#1523)
    • Bump k8s dependencies version to v1.19.2(#1531)

    Fix Bugs:

    • Refine repos cloning and fix git checkout (#1511)
    • Fix bitbucket PR commits won't trigger pipeline

    Break Change:

    • Artifacts (designed for transferring files between stages) are NOT supported, we prefer share files using persistent volumes instead.
    Source code(tar.gz)
    Source code(zip)
  • v0.9.12(Nov 5, 2020)

  • v1.0.3-alpha(Oct 28, 2020)

    Feature:

    • Support for dood container (#1508)

    Bug Fix:

    • Fix: delete project name in workflow pod env (#1510)
    • Fix(resolver::git): refine repos cloning and fix git checkout (#1513)
    Source code(tar.gz)
    Source code(zip)
  • v1.0.2(Oct 15, 2020)

  • v1.0.2-alpha(Sep 20, 2020)

    Feature:

    • Support sbt accelerate (#1490)

    Bug Fix:

    • Fix(security): filter git auth information (#1478)
    • Fix(resolver): replace line feed (#1479)
    • Fix: bump git version to 2.26.2 (#1475) (#1492)
    • Fix: should not mutate users input silently (#1493)
    • Fix: optimize git clone process (#1496)
    • Fix: validate scm auth info problem (#1501)
    • Fix: connection refused should not block close cluster (#1503)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.11(Sep 17, 2020)

    Feature:

    • Support extension parameters for sonar scanner (#1446)
    • Support sbt accelerate (#1489)

    Bug Fix:

    • Return error when quality gate failed (#1444)
    • Trim suffix / for the server (#1447)
    • Delay to close websocket (#1462)
    • Overall start time lost when wfr timeout (#1465)
    • Replace line feed (#1477)
    • Filter git auth information (#1476)
    • Bump git version to 2.26.2 (#1475) (#1491)
    • Should not mutate users input silently (#1494)
    • Optimize git clone process (#1495)
    • Validate scm auth info problem (#1500)
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0(Aug 12, 2020)

    Bug Fix:

    • Overall start time lost when wfr timeout (#1464)
    • Pod stuck on terminating while related wf deleted (#1468)
    • Change log level of workflow controller from debug to info (#1470)
    • Status wrong when task processed in the delegation api (#1467)
    • Replace line feed of docker auth(#1473)
    • Bump git version to 2.26.2 (#1475)
    • Filter git auth information (#1474)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.10(Jul 17, 2020)

    Feature:

    • Global variable (#1432)
    • Support enterprise Github (#1434)

    Bug Fix:

    • Sending ping message for websocket (#1420)
    • Overall status wrong when stage status is cancelled (#1431)
    • Bump gorilla websocket version to 1.14.2 (#1433)
    Source code(tar.gz)
    Source code(zip)
  • v1.0.1(Jul 16, 2020)

  • v1.0.1-beta(Jul 2, 2020)

    Feature:

    • Push image with retry logic (#1425)
    • Support arm64 (#1449)

    Bug Fix:

    • Process trivial stage cancellation (#1419)
    • Sending ping message for websocket (#1423)
    • Trim suffix / for the server (#1441)
    • Return error when quality gate failed (#1445)
    • Delay to close websocket (#1463)

    Refactor:

    • Use mkdir to acquire lock in svn resolver (#1402)
    • Use openssl for git (#1424)
    • Use alpine base image for svn (#1427)
    • Use alpine base image for watcher (#1428)
    • Provide cyclone base images to build images (#1452)
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0-beta(Jun 30, 2020)

    Feature:

    • Leader election & Health check (#1443)
    • Support arm64 (#1450)

    Bug Fix:

    • Delete old cache cleanup pod while sever restart (#1414)
    • Sending ping message for websocket (#1422)
    • Trim suffix / for the sonar server (#1439)
    • Return error when quality gate failed (#1437)
    • Check channel error before using (#1457)
    • Delay to close websocket (#1461)

    Refactor:

    • Use finalizer as pre-delete hooks to process object deleting (#1436)
    • Provide cyclone base images to build images (#1455)

    Perf

    • Support starting multi workers (#1430)
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0-alpha.3(May 15, 2020)

    Feature:

    • Add health check for cyclone server (#1421)

    Bug Fix:

    • Process trivial stage cancellation (#1411)

    Chore:

    • Bump Kubernetes version to 1.17.5 (#1412)
    • Bump Golang to 1.13.9
    Source code(tar.gz)
    Source code(zip)
  • v0.9.9(Apr 23, 2020)

  • v1.1.0-alpha.2(Apr 17, 2020)

    Feature:

    • Support matching files by find_options for http resource (#1405)
    • Support artifact retention (#1408)

    Refactor:

    • Use mkdir to acquire lock in svn resolver (#1404)
    • Use children descriptor to simplify api definition (#1406)

    Bug Fix

    • Update deployment version to satisfy k8s 1.17 (#1399)
    • Init caches cleanup status (#1410)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.9-alpha.3(Apr 13, 2020)

  • v0.9.9-alpha.2(Apr 3, 2020)

  • v1.1.0-alpha.1(Mar 27, 2020)

  • v1.1.0-alpha(Mar 13, 2020)

    Feature:

    • Migrating to go modules (#1393)
    • Update Golang and Kubernetes (#1394)
    • Push image with retry logic (#1371)
    • Record pod event of stages (#1395)

    Refactor:

    • Use openssl for git resolver (#1364)
    • Use alpine base image for watcher and git resolver(#1378 #1377)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.9-alpha.1(Mar 23, 2020)

    Feature:

    • Support arm64(#1357)
    • Push image with retry logic (#1379)

    Refactor

    • Use openssl for git (#1372
    • Use alpine base image for svn (#1384)
    • Use alpine base image for watcher (#1382)
    Source code(tar.gz)
    Source code(zip)
  • v1.0.0(Jan 7, 2020)

    Bug Fix:

    • Running status animation (#1351)
    • Workflow required field and undefined func (#1350)
    • Output-resource-path required validate (#1354)
    • Overall last transition time not correct (#1360)

    Feature:

    • Cyclone web supports show final logs of stages (#1349)
    • Cyclone web supports show real-time logs of stages (#1352)
    • Make qps and brust configurable for k8s client (#1356)

    Docs:

    • Explain Kubernets resources used in Cyclone (#1337)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.8(Jan 8, 2020)

    Bug Fix:

    • Fix svn checkout error can't convert string from 'UTF-8' to native encoding(#1357)

    Feature:

    • Make qps and brust configurable for k8s client (#1359)
    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta.6(Dec 19, 2019)

    Bug Fix:

    • Fix svn checkout error can't convert string from 'UTF-8' to native encoding(#1341)

    Feature:

    • Feat: svn post commit trigger support selecting repo (#1343)
    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta.5(Dec 3, 2019)

    Bug Fix:

    • Deleting pod stuck on Terminating status (#1321)
    • Update workflow display form is incorrect (#1309)
    • Delete branch should not tirgger workflowrRun (#1336)
    • Update pvc failed as old pvc watchdog have not been deleting completed (#1338)

    Feature:

    • Add WorkflowRun parallelism constraints and waiting queue (#1280)
    • PR events support specify target branch (#1330)
    • Record pvc usage in list executioncontexts api (#1331)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.8-beta(Nov 12, 2019)

Owner
Caicloud
Focus on kubernetes and deep learning to build personalized cloud services
Caicloud
A tool for testing, building, signing, and publishing binaries.

gomason Tool for testing, building, signing and publishing binaries. Think of it as an on premesis CI/CD system- that also performs code signing and p

Nik Ogura 55 Dec 15, 2022
Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes.

What is Argo Workflows? Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. Argo Workflow

null 0 Dec 10, 2021
go.pipeline is a utility library that imitates unix pipeline. It simplifies chaining unix commands (and other stuff) in Go.

go.pipeline go.pipeline is a utility library that imitates unix pipeline. It simplifies chaining unix commands (and other stuff) in Go. Installation g

Song Gao 14 May 8, 2022
:wink: :cyclone: :strawberry: TextRank implementation in Golang with extendable features (summarization, phrase extraction) and multithreading (goroutine) support (Go 1.8, 1.9, 1.10)

TextRank on Go This source code is an implementation of textrank algorithm, under MIT licence. The minimum requred Go version is 1.8. MOTIVATION If th

David Belicza 169 Dec 18, 2022
Pack a Go workflow/function as a Unix-style pipeline command

tpack Pack a Go workflow/function as a Unix-style pipeline command. Wiki In Unix-like computer operating systems, a pipeline is a mechanism for inter-

Eugene R. 55 Nov 9, 2022
Set of Kubernetes solutions for reusing idle resources of nodes by running extra batch jobs

Caelus Caelus is a set of Kubernetes solutions for reusing idle resources of nodes by running extra batch jobs, these resources come from the underuti

Tencent 300 Nov 22, 2022
Workflow engine for Kubernetes

What is Argo Workflows? Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. Argo Workflow

Argo Project 12.3k Jan 4, 2023
churro is a cloud-native Extract-Transform-Load (ETL) application designed to build, scale, and manage data pipeline applications.

Churro - ETL for Kubernetes churro is a cloud-native Extract-Transform-Load (ETL) application designed to build, scale, and manage data pipeline appli

churrodata 13 Mar 10, 2022
:octocat: ghdag is a tiny workflow engine for GitHub issue and pull request.

ghdag ghdag is a tiny workflow engine for GitHub issue and pull request. Key features of ghdag are: Simple definition of workflows to improve the life

Ken’ichiro Oyama 23 Nov 5, 2022
vkectl is a tool to manage VKE(VolcanoEngine Kubernetes Engine) resources through a CLI

vkectl Introduction vkectl is a tool to manage VKE(VolcanoEngine Kubernetes Engine) resources through a CLI(Command Line Interface). It is written in

Volcengine 30 Aug 26, 2022
Nocalhost is Cloud Native Dev Environment.

Most productive way to build cloud-native applications. Nocalhost The term Nocalhost originates from No Local, which is a cloud-native development too

Nocalhost 1.5k Dec 29, 2022
Git-based DevOps PaaS: Project, Pipeline, Kubernetes, ServiceMesh, MutilCloud

gitctl 一体化 DevOps 平台 从代码到应用的一体化编排,应用全生命周期管理,多云托管。 gitctl 会有哪些功能? git 代码托管 projec

null 12 Oct 24, 2022
Arche - Smart Hybrid Workforce Manager: A system that aims to provide companies an easy to use platform for managing company resources by allowing employees to book company spaces and resources.

Description Smart Hybrid Workforce Manager is a system that aims to provide companies an easy to use system for managing company resources by allowing

COS 301 - 2022 26 Dec 8, 2022
Zeebe.io - Workflow Engine for Microservices Orchestration

Distributed Workflow Engine for Microservices Orchestration

null 2.6k Jan 2, 2023
The open source, end-to-end computer vision platform. Label, build, train, tune, deploy and automate in a unified platform that runs on any cloud and on-premises.

End-to-end computer vision platform Label, build, train, tune, deploy and automate in a unified platform that runs on any cloud and on-premises. onepa

Onepanel, Inc. 642 Dec 12, 2022
A k8s vault webhook is a Kubernetes webhook that can inject secrets into Kubernetes resources by connecting to multiple secret managers

k8s-vault-webhook is a Kubernetes admission webhook which listen for the events related to Kubernetes resources for injecting secret directly from sec

Opstree Container Kit 111 Oct 15, 2022
End to end functional test and automation framework

Declarative end to end functional testing (endly) This library is compatible with Go 1.12+ Please refer to CHANGELOG.md if you encounter breaking chan

Viant, Inc 231 Jan 6, 2023
End-to-end HTTP and REST API testing for Go.

httpexpect Concise, declarative, and easy to use end-to-end HTTP and REST API testing for Go (golang). Basically, httpexpect is a set of chainable bui

Victor Gaydov 2.1k Jan 5, 2023
An always-on framework that performs end-to-end functional network testing for reachability, latency, and packet loss

Arachne Arachne is a packet loss detection system and an underperforming path detection system. It provides fast and easy active end-to-end functional

Uber Open Source 370 Dec 31, 2022