Skip to content

feat: slash command for certificate helper #238

feat: slash command for certificate helper

feat: slash command for certificate helper #238

Workflow file for this run

name: CI
on:
push:
branches: ['master']
pull_request:
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}
jobs:
check:
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' }}
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
version: 18.14.2
- uses: actions/cache@v1
name: Cache node_modules
id: cache-node-modules
with:
path: node_modules
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}-node_modules
- name: Yarn
if: steps.cache-node-modules.outputs.cache-hit != 'true'
run: yarn install
- name: Build and Lint
run: yarn typecheck
build:
runs-on: ubuntu-latest
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Login to GHCR
uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
- name: Build and push Docker image
uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc
with:
context: .
file: Production.dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
build-args: COMMIT_SHA=${{ github.sha }}
deploy:
runs-on: ubuntu-latest
name: Deploy to Charon
needs: build
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
environment: aethebot
steps:
- name: Setup Tailscale
id: tailscale
uses: tailscale/github-action@v2
with:
oauth-client-id: ${{ secrets.TS_OAUTH_CLIENT_ID }}
oauth-secret: ${{ secrets.TS_OAUTH_SECRET }}
tags: tag:aethebot-ci
- name: Deploy via SSH
id: ssh_deploy
env:
SSH_KEY: ${{ secrets.CHARON_SSH_KEY }}
run: |
mkdir -p ~/.ssh
MACHINE_IP="$(tailscale ip -4 charon)"
ssh-keyscan -t ed25519 $MACHINE_IP >> ~/.ssh/known_hosts
printf "%s" "$SSH_KEY" > ~/.ssh/key
chmod 600 ~/.ssh/key
ssh -i ~/.ssh/key tyrone@$MACHINE_IP /home/tyrone/aethebot/restart.sh