wojtekk / herokupipelines4travis
Installs: 19
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 2
Forks: 1
Open Issues: 1
Language:Shell
- v0.5.0
- v0.4.5
- v0.4.4
- v0.4.3
- v0.4.2
- v0.4.1
- v0.4.0
- v0.3.11
- v0.3.10
- v0.3.9
- v0.3.8
- v0.3.7
- v0.3.6
- v0.3.5
- v0.3.4
- v0.3.3
- v0.3.2
- v0.3.1
- v0.3.0
- v0.2.34
- v0.2.33
- v0.2.32
- v0.2.31
- v0.2.30
- v0.2.29
- v0.2.28
- v0.2.27
- v0.2.26
- v0.2.25
- v0.2.24
- v0.2.23
- v0.2.22
- v0.2.21
- v0.2.20
- v0.2.19
- v0.2.17
- v0.2.16
- v0.2.15
- v0.2.14
- v0.2.13
- v0.2.12
- v0.2.11
- v0.2.10
- v0.2.9
- v0.2.8
- v0.2.7
- v0.2.6
- v0.2.5
- v0.0.2
- v0.0.1
- dev-tarball-deployment
This package is not auto-updated.
Last update: 2025-01-04 19:32:18 UTC
README
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 fileinfrastructure/
- directory with infrastructure configurationbase.js
- base configurationstage.js
- stage environment configurationproduction.js
- production environment configuration
Convention
For simplify usage you should define:
alias hp4t="$(npm bin)/hp4t"
Setup commands
hp4t setup
- initialise projecthp4t export app_name [heroku_api_key]
- export existing Heroku application configration
Commands for Travis CI
hp4t init
- initialise runtime environmenthp4t provision environment_name
- provision Heroku apphp4t pipeline
- setup Heroku pipelinehp4t deploy app_name
- deploy code to Heroku apphp4t run app_name "command with params"
- run command on Heroku application (useful for database migration)hp4t promote app_name
- promote existing application to next environmenthp4t package output-file.tgz
- build a tarball (tgz) with dependencies for Npm based projectshp4t 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
.