Skip to content
This repository has been archived by the owner on Feb 13, 2023. It is now read-only.

Syncs Travis settings and .travis.yml across a large number of repositories

License

Notifications You must be signed in to change notification settings

Sydsvenskan/node-travis-env-sync

Repository files navigation

Travis-Env-Sync

Syncs Travis settings and .travis.yml across a large number of repositories

Sets Travis settings for only building when there's a .travis.yml and optionally sets cron and secret environment variables (adds or updates). Also builds and pushes a .travis.yml with optionally an encrypted Slack notification.

Built to support both both Travis .org and .com, but only tested with .com.

js-semistandard-style

Install

npm install -g @hdsydsvenskan/travis-env-sync

Syntax

travis-env-sync config.yml

Or:

cat config.yml | travis-env-sync

Flags

  • --keychain / -k – use Keychain to store secrets (or non-Mac equivalent supported by keytar)
  • --reset / -r – reset the data in the Keychain, so new data can be defined
  • --help
  • --version

Config file

Example:

repos:
  - 'example/example'
cron: 'weekly'
slack: 'slackorganization'
private_travis: true
secret_env_vars:
  - 'NPM_TOKEN'
travis:
  language: node_js
  node_js:
    - '8'
    - '6'
  sudo: false
  before_install:
    - echo "//registry.npmjs.org/:_authToken=\${NPM_TOKEN}" > .npmrc

Config keys

  • repos – a list of all the repos to update
  • travis – the actual Travis configuration
  • [cron]optional – set to weekly, daily or monthly to set up a cron job to run for master if it hasn't recently built
  • [private_travis]optional – set to true if your targeting private repos (you can't target both private and public repos at once as Travis runs the two at two different API:s)
  • [secret_env_vars]optional – secret environment variables that should be saved to Travis and, if chosen, saved to Keychain. Value will be prompted for.
  • [slack]optional – the name of the Slack account to send notifications to

About

Syncs Travis settings and .travis.yml across a large number of repositories

Resources

License

Stars

Watchers

Forks

Packages

No packages published