Skip to content

chore(devenv): add devenv #26

chore(devenv): add devenv

chore(devenv): add devenv #26

Workflow file for this run

name: DEPLOY_TO_EC2
on:
workflow_dispatch:
push:
pull_request:
branches:
- main
jobs:
build_and_deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
profile: minimal
override: true
- name: Install WebAssembly target
run: rustup target add wasm32-unknown-unknown
- name: Install trunk
run: cargo install trunk
- name: Build the project
run: trunk build --release
- name: Deploy to EC2
uses: easingthemes/ssh-deploy@main
env:
SSH_PRIVATE_KEY: ${{ secrets.EC2_SSH_KEY }}
REMOTE_HOST: ${{ secrets.EC2_HOST }}
REMOTE_USER: ${{ secrets.EC2_USER }}
SOURCE: ./dist
TARGET: /home/${{ secrets.EC2_USER }}
SCRIPT_BEFORE: |
temp_dist="/home/${{ secrets.EC2_USER }}/dist"
sudo mkdir -p $temp_dist
sudo chmod 777 $temp_dist
- name: Executing remote ssh commands using ssh key
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.EC2_HOST }}
username: ${{ secrets.EC2_USER }}
key: ${{ secrets.EC2_SSH_KEY }}
script: |
sudo rsync -av --delete /home/${{ secrets.EC2_USER }}/dist/* ${{ secrets.ROOT_DIR }}
sudo rm -rf /home/${{ secrets.EC2_USER }}/dist
sudo nginx -t
sudo systemctl restart nginx