3.0.8 • Published 5 years ago

herokupipelines4travis v3.0.8

Weekly downloads
11
License
ISC
Repository
github
Last release
5 years ago

Heroku Pipelines for Travis CI

Initial setup

Create application and configure pipeline on Heroku.

To initiate project follow commands:

npm install herokupipelines4travis lodash --save-dev
$(npm bin)/hp4t setup

Package _lodash is optional - install it if you want to use it in infrastructure/._

You can edit files:

  • .travis.yml - Travis CI configuration file
  • infrastructure/ - directory with infrastructure configuration
    • base.js - base configuration
    • stage.js - stage environment configuration
    • production.js - production environment configuration

Convention

For simplify usage you should define:

alias hp4t="$(npm bin)/hp4t"

Setup commands

  • hp4t setup - initialise project
  • hp4t export app_name [heroku_api_key] - export existing Heroku application configration

Commands for Travis CI

  • hp4t init - initialise runtime environment
  • hp4t provision environment_name - provision Heroku app
  • hp4t pipeline - setup Heroku pipeline
  • hp4t deploy app_name - deploy code to Heroku app
  • hp4t run app_name "command with params" - run command on Heroku application (useful for database migration)
  • hp4t promote app_name - promote existing application to next environment
  • hp4t package output-file.tgz - build a tarball (tgz) with dependencies for Npm based projects
  • hp4t deploy-tarball app_name file.tgz - deploy tarball file to a Heroku aplication

Read more

Example Travis configuration file

.travis.yml

---
language: node_js
node_js: stable
env:
  global:
  # ========== Heroku Pipelines for Travis =========
  # HEROKU_API_KEY
  - secure: "..."
  - HP4T_HEROKU_APPNAME_STAGE=hp4t-test-stage
  - HP4T_HEROKU_APPNAME_PRODUCTION=hp4t-test
cache:
  directories:
  - node_modules
install:
- npm install
script:
- npm test
- npm lint
deploy:
  - provider: script
    skip_cleanup: true
    script: make deploy
    on:
      branch: master
after_success:
- hp4t notify-rollbar

Makefile

deploy:
  hp4t init
  hp4t package build.tgz
  hp4t pipeline
  hp4t provision stage
  hp4t deploy-tarball build.tgz ${HP4T_HEROKU_APPNAME_STAGE}
  hp4t run ${HP4T_HEROKU_APPNAME_STAGE} "npm run migrate-database"
  hp4t provision production
  hp4t promote ${HP4T_HEROKU_APPNAME_STAGE}
  hp4t run ${HP4T_HEROKU_APPNAME_PRODUCTION} "npm run migrate-database"

Please remember to use one tab indent in Makefile.

3.0.8

5 years ago

3.0.7

6 years ago

3.0.6

7 years ago

3.0.5

7 years ago

0.5.2

7 years ago

3.0.4

7 years ago

3.0.3

7 years ago

3.0.2

7 years ago

3.0.1

7 years ago

3.0.0

7 years ago

0.5.1

7 years ago

0.5.0

7 years ago

0.4.5

7 years ago

0.4.4

7 years ago

0.4.3

7 years ago

0.4.2

7 years ago

0.4.1

7 years ago

0.4.0

7 years ago

0.3.11

7 years ago

0.3.9

7 years ago

0.3.7

7 years ago

0.3.1

7 years ago

0.3.5

7 years ago

0.3.3

7 years ago

0.2.34

8 years ago

0.2.33

8 years ago

0.2.32

8 years ago

0.2.31

8 years ago

0.2.30

8 years ago

0.2.29

8 years ago

0.2.28

8 years ago

0.2.27

8 years ago

0.2.23

8 years ago

0.2.22

8 years ago

0.2.21

8 years ago

0.2.20

8 years ago

0.2.19

8 years ago

0.2.18

8 years ago

0.2.17

8 years ago

0.2.16

8 years ago

0.2.15

8 years ago

0.2.14

8 years ago

0.2.13

8 years ago

0.2.12

8 years ago

0.2.11

8 years ago

0.2.10

8 years ago

0.2.9

8 years ago

0.2.8

8 years ago

0.2.7

8 years ago

0.2.6

8 years ago

0.2.5

8 years ago

0.2.4

8 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.7

8 years ago

0.1.6

8 years ago

0.1.5

8 years ago

0.1.4

8 years ago

0.1.3

8 years ago

0.1.2

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago

0.0.8

8 years ago

0.0.7

8 years ago

0.0.6

8 years ago

0.0.5

8 years ago

0.0.4

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago