{"id":16095503,"url":"https://github.com/sio/cirrus-run","last_synced_at":"2025-03-18T06:31:07.465Z","repository":{"id":41239225,"uuid":"240333229","full_name":"sio/cirrus-run","owner":"sio","description":"Command line tool to execute jobs in Cirrus CI","archived":false,"fork":false,"pushed_at":"2023-08-31T13:21:04.000Z","size":51,"stargazers_count":12,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-13T02:19:55.926Z","etag":null,"topics":["cirrus-ci","gitlab","python"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/cirrus-run/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sio.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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":"2020-02-13T18:34:42.000Z","updated_at":"2024-10-28T15:50:53.000Z","dependencies_parsed_at":"2024-10-27T17:40:01.851Z","dependency_job_id":null,"html_url":"https://github.com/sio/cirrus-run","commit_stats":{"total_commits":67,"total_committers":1,"mean_commits":67.0,"dds":0.0,"last_synced_commit":"1a7fcbd6a6aa9a5706b7adabaefa85ed8fe5ff35"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fcirrus-run","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fcirrus-run/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fcirrus-run/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fcirrus-run/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sio","download_url":"https://codeload.github.com/sio/cirrus-run/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243910387,"owners_count":20367537,"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":["cirrus-ci","gitlab","python"],"created_at":"2024-10-09T17:05:49.119Z","updated_at":"2025-03-18T06:31:07.102Z","avatar_url":"https://github.com/sio.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Command line tool to execute jobs in Cirrus CI\n\n## Project status\n\nStable software. Adopted by several third parties to build their CI pipelines.\nThe project uses [semantic versioning], any breaking changes will result in major\nversion increment. Recommended to pin to `1.*` when using in production.\n\n[semantic versioning]: https://semver.org/\n\n\n## Overview\n\ncirrus-run is a CLI application that allows you to execute builds in\nCirrusCI.\n\nIt uses local YAML files for build configuration, but requires a reference to\nGitHub repo and branch to assign ownership of the build. The build itself may\nhave no relation to the specified GitHub repo. This enables integration with\nother source code hosting platforms, [e.g. with GitLab][blog]: you can trigger\nCirrusCI builds by executing cirrus-run in GitLab CI\n\n[blog]: https://potyarkin.com/posts/2020/cirrus-ci-integration-for-gitlab-projects/\n\n\n\n## Installation\n\ncirrus-run can be installed with pip:\n\n```\npip install cirrus-run\n```\n\nLatest development versions are also installable:\n\n```\npip install \"https://github.com/sio/cirrus-run/tarball/master#egg=cirrus-run\"\n```\n\nYou can also run it in Docker:\n[potyarkin/cirrus-run](https://hub.docker.com/r/potyarkin/cirrus-run).\nThis image is especially useful for integrating with other CI platforms.\n\n\n## Usage\n\n```\nusage: cirrus-run [-h] [--token TOKEN] [--github REPO] [--branch BRANCH] [-v]\n                  [--timeout MINUTES]\n                  [--show-build-log {failure,always,never}]\n                  [--flaky-markers FILE]\n                  [CONFIG]\n\nExecute CI jobs in CirrusCI\n\npositional arguments:\n  CONFIG                Path to YAML configuration file or Jinja2 template for\n                        such file. Filenames ending with .j2 or .jinja2 are\n                        assumed to provide the templates. All environment\n                        variables are available inside these templates.\n                        Default value: $CIRRUS_CONFIG or .cirrus.yml or\n                        .cirrus.yml.j2\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --token TOKEN         Access token for CirrusCI API. Recommended and more\n                        secure way of providing the token is via environment\n                        variable. Default value: $CIRRUS_API_TOKEN\n  --github REPO         GitHub repo id that will own the build\n                        (\"owner/reponame\"). This repo may have no relation to\n                        the CI job being executed. It may even be empty.\n                        Default value: $CIRRUS_GITHUB_REPO\n  --branch BRANCH       GitHub repo branch that will own the build. This\n                        branch may have no relation to the CI job being\n                        executed. Default value: $CIRRUS_GITHUB_BRANCH or\n                        master\n  -v, --verbose         Increase output verbosity. Repeating this argument\n                        multiple times increases verbosity level even further.\n  --timeout MINUTES     Timeout (in minutes) before assuming that the build\n                        has hanged and that API responses are unreliable.\n                        Default value: $CIRRUS_TIMEOUT or 120\n  --show-build-log {failure,always,never}\n                        Specify whether to print the build log to stdout after\n                        completing CI run. Default value:\n                        $CIRRUS_SHOW_BUILD_LOG or \"failure\"\n  --flaky-markers FILE  Path to file that contains flaky build markers, one\n                        marker per line. If any marker is found in Cirrus CI\n                        output for a failed build, the build is retried once\n                        more. Default: $CIRRUS_FLAKY_MARKERS_FILE\n```\n\n\n## Support and contributing\n\nIf you need help with using cirrus-run, please create\n**[an issue](https://github.com/sio/cirrus-run/issues)**. Issues are also the\nprimary venue for reporting bugs and posting feature requests. General\ndiscussion related to this project is also acceptable and very welcome!\n\nIn case you wish to contribute code or documentation, feel free to open **[a\npull request](https://github.com/sio/cirrus-run/pulls)**. That would certainly\nmake my day!\n\nI'm open to dialog and I promise to behave responsibly and treat all\ncontributors with respect. Please try to do the same, and treat others the way\nyou want to be treated.\n\nIf for some reason you'd rather not use the issue tracker, contacting me via\nemail is OK too. Please use a descriptive subject line to enhance visibility\nof your message. Also please keep in mind that public discussion channels are\npreferable because that way many other people may benefit from reading past\nconversations. My email is visible under the GitHub profile and in the commit\nlog.\n\n\n## License and copyright\n\nCopyright 2020-2021 Vitaly Potyarkin\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use these files except in compliance with the License.\n    You may obtain a copy of the License at\n\n        http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsio%2Fcirrus-run","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsio%2Fcirrus-run","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsio%2Fcirrus-run/lists"}