Merge pull request #285 from pelias/node-postal-1.1.2 #71
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Continuous Integration | |
on: push | |
jobs: | |
unit-tests: | |
runs-on: '${{ matrix.os }}' | |
strategy: | |
matrix: | |
os: | |
- ubuntu-20.04 | |
node-version: | |
- 12.x | |
- 14.x | |
- 16.x | |
steps: | |
- uses: actions/checkout@v2 | |
- name: 'Install node.js ${{ matrix.node-version }}' | |
uses: actions/setup-node@v2-beta | |
with: | |
node-version: '${{ matrix.node-version }}' | |
- name: Install dependencies | |
run: | | |
sudo add-apt-repository -y ppa:ubuntugis/ppa | |
sudo apt-get update -q | |
sudo apt-get install -y proj-bin gdal-bin | |
- name: Run unit tests | |
run: | | |
npm install | |
npm run ci | |
npm-publish: | |
needs: unit-tests | |
if: github.ref == 'refs/heads/master' && github.event_name == 'push' | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install Node.js | |
uses: actions/setup-node@v2-beta | |
with: | |
node-version: 16.x | |
- name: Run semantic-release | |
env: | |
GH_TOKEN: ${{ secrets.GH_SEMANTIC_RELEASE_TOKEN }} | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
run: > | |
if [[ -n "$GH_TOKEN" && -n "$NPM_TOKEN" ]]; then | |
curl "https://raw.githubusercontent.com/pelias/ci-tools/master/semantic-release.sh" | bash - | |
fi | |
build-docker-images: | |
# run this job if the unit tests passed and the npm-publish job was a success or was skipped | |
# note: github actions won't run a job if you don't call one of the status check functions, so `always()` is called since it evalutes to `true` | |
if: ${{ always() && needs.unit-tests.result == 'success' && (needs.npm-publish.result == 'success' || needs.npm-publish.result == 'skipped') }} | |
needs: [unit-tests, npm-publish] | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Build Docker images | |
env: | |
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} | |
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} | |
run: | | |
curl "https://raw.githubusercontent.com/pelias/ci-tools/master/build-docker-images.sh" | bash - |