From a3fe4d492e0ee3d00aba768feeff2f5807a5367e Mon Sep 17 00:00:00 2001 From: Ethan Lane Date: Mon, 29 Jul 2024 17:57:34 +0100 Subject: [PATCH] Update forgejo actions workflow to rsync to the server on push to master/develop --- .forgejo/workflows/publish.yml | 2 + .forgejo/workflows/staging.yml | 35 +++++++++++++ .forgejo/workflows/test.yml | 1 - .woodpecker.yml | 92 ---------------------------------- 4 files changed, 37 insertions(+), 93 deletions(-) create mode 100644 .forgejo/workflows/staging.yml delete mode 100644 .woodpecker.yml diff --git a/.forgejo/workflows/publish.yml b/.forgejo/workflows/publish.yml index a09d07b..c9428ce 100644 --- a/.forgejo/workflows/publish.yml +++ b/.forgejo/workflows/publish.yml @@ -31,6 +31,8 @@ jobs: node-version: 20.x - run: yarn install --frozen-lockfile - run: yarn build + - run: yarn package + - run: cp -r ./bin ${{ secrets.PROD_REPO_PATH }} - uses: https://github.com/JS-DevTools/npm-publish@v3 with: token: ${{ secrets.NPM_TOKEN }} \ No newline at end of file diff --git a/.forgejo/workflows/staging.yml b/.forgejo/workflows/staging.yml new file mode 100644 index 0000000..94f3fce --- /dev/null +++ b/.forgejo/workflows/staging.yml @@ -0,0 +1,35 @@ +name: Stage + +on: + push: + branches: + - develop + +jobs: + build: + + runs-on: node + + steps: + - uses: actions/checkout@v4 + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: 20.x + - run: yarn install --frozen-lockfile + - run: yarn build + - run: yarn test + - run: yarn lint + + rsync: + needs: build + runs-on: node + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20.x + - run: yarn install --frozen-lockfile + - run: yarn build + - run: yarn package + - run: cp -r ./bin ${{ secrets.STAGE_REPO_PATH }} \ No newline at end of file diff --git a/.forgejo/workflows/test.yml b/.forgejo/workflows/test.yml index b5ff0f5..a70e410 100644 --- a/.forgejo/workflows/test.yml +++ b/.forgejo/workflows/test.yml @@ -7,7 +7,6 @@ on: - hotfix/* - renovate/* - dependabot/* - - develop jobs: build: diff --git a/.woodpecker.yml b/.woodpecker.yml deleted file mode 100644 index c25343c..0000000 --- a/.woodpecker.yml +++ /dev/null @@ -1,92 +0,0 @@ -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.1.115:/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.1.115:/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 -- 2.43.4