Update CircleCI Orbs versions
Create CircleCI config yaml
orbs:
slack: circleci/slack@1.0.0
hello-build: circleci/hello-build@0.0.13
Execute command
$ orb-update
Then orb's versions are updated
orbs:
slack: circleci/slack@3.4.1
hello-build: circleci/hello-build@0.0.14
orb-update can update orb and create pull request.
Here is minimum sample.
version: 2.1
orbs:
orb-update: sawadashota/orb-update@volatile
workflows:
orb-update:
jobs:
- orb-update/orb-update
And following environment variables are required.
GITHUB_USERNAME
: GitHub token's userGITHUB_TOKEN
: GitHub access token
$ go get -u github.com/sawadashota/orb-update
or
$ brew tap sawadashota/homebrew-cheers
$ brew install orb-update
It's easy to check and update orb version every night. Here is an example.
version: 2.1
orbs:
orb-update: sawadashota/orb-update@volatile
workflows:
orb-update:
jobs:
- orb-update/orb-update:
repository: owner/repository-name
triggers:
- schedule:
cron: "0 19 * * *"
filters:
branches:
only:
- master
https://circleci.com/orbs/registry/orb/sawadashota/orb-update
Define configuration .orb-update.yml
or CLI argument --config
.
# target config file path
# default is `.circleci/config.yml`
target_files:
- .circleci/config.yml
repository:
# name of this repository
name: sawadashota/orb-update
git:
# author of commit
# require when Pull Request Creation
# if empty, fetch from GitHub
author:
name: sawadashota
email: example@example.com
github:
# Pull Request creation option
# default is false
pull_request: true
# these should be configured by environment variable because of credentials
#
# `GITHUB_USERNAME`
#username: sawadashota
# `GITHUB_TOKEN`
#token: github_token
# base branch
# default is `master`
base_branch: master
filesystem:
# filesystem strategy supports `os` and `memory`
# default is `os` for easy to use in local
# but in CI, `memory` is recommended
strategy: memory
ignore:
- circleci/orb-tools
$ docker run --rm -v $(pwd):/repo sawadashota/orb-update orb-update