steps: build: # Build and test image: node commands: - yarn install --frozen-lockfile - yarn build when: event: [ push, pull_request ] branch: [ hotfix/*, feature/*, renovate/*, develop, main ] lint: image: node commands: - yarn lint when: event: [ push, pull_request ] branch: [ hotfix/*, feature/*, renovate/*, develop, main ] test: image: node commands: - yarn test when: event: [ push, pull_request ] branch: [ hotfix/*, feature/*, renovate/*, develop, main ] # Package production build package_prod: image: node commands: - apt install unzip -y - wget https://github.com/xerub/ldid/releases/download/42/ldid.zip - unzip ldid.zip - mkdir /opt/ldid/ - cp linux64/ldid /opt/ldid/ - export PATH=/opt/ldid:$PATH - yarn package when: event: tag branch: main rsync_prod: image: alpine secrets: [ ssh_key ] commands: - apk add rsync openssh-client - eval `ssh-agent -s` - echo "$SSH_KEY" | tr -d '\r' | ssh-add - - rsync -e "ssh -o StrictHostKeyChecking=no" -r ./bin vylpes@192.168.68.120:/home/vylpes/apps/random-bunny/random-bunny_prod when: event: tag branch: main # Package stage build package_stage: image: node commands: - apt install unzip -y - wget https://github.com/xerub/ldid/releases/download/42/ldid.zip - unzip ldid.zip - mkdir /opt/ldid/ - cp linux64/ldid /opt/ldid/ - export PATH=/opt/ldid:$PATH - yarn package when: event: push branch: develop rsync_stage: image: alpine secrets: [ ssh_key ] commands: - apk add rsync openssh-client - eval `ssh-agent -s` - echo "$SSH_KEY" | tr -d '\r' | ssh-add - - rsync -e "ssh -o StrictHostKeyChecking=no" -r ./bin vylpes@192.168.68.120:/home/vylpes/apps/random-bunny/random-bunny_stage when: event: push branch: develop # Publish to NPM publish: image: plugins/npm settings: username: from_secret: NPM_USERNAME email: from_secret: NPM_EMAIL password: from_secret: NPM_PASSWORD api_key: from_secret: NPM_TOKEN when: event: tag branch: main