CSTM_IMGSTOR/.github/workflows/WebCI.yml

93 lines
3.3 KiB
YAML

name: IMAGESTOR CI
on:
push:
branches:
- Main
jobs:
IMAGESTOR_CI:
runs-on: [linux]
steps:
# --- STARTUP DISCORD NOTIFICATION ----
- name: Send Startup Notification to Discord
if: always()
run: |
curl -H "Content-Type: application/json" \
-d "{
\"username\": \"Fred The Builder\",
\"avatar_url\": \"https://i.imgur.com/tgpIa7T.png\",
\"embeds\": [
{
\"title\": \"Beginning IMAGESTOR WEB CI\",
\"description\": \"Workflow triggered by commit: https://git.cstmgames.dev/${GITHUB_REPOSITORY}/commit/${GITHUB_SHA}\",
\"color\": 16217354
}
]
}" \
"${{ secrets.DISCORD_WEBHOOK }}"
# --- CHECKOUT REPO ---
- name: Checkout
uses: actions/checkout@v3.5.3
with:
fetch-depth: 0
# --- RESTORE LAST MODIFICATION TIMESTAMPS ---
- name: Restore Last Modificaiton Timestamps
uses: chetan/git-restore-mtime-action@v2
# --- MOVE CODE TO WORKING DIRECTORY ---
- name: Move code to working directory so upload is easier
run: |
mkdir -p ./workingdir2
find ./ -mindepth 1 -maxdepth 1 -type d ! -name '.git' ! -name '.github' ! -name 'workingdir2' ! -name '.vscode' -exec mv -t workingdir2/ {} +
# --- SFTP UPLOAD WEB ---
- name: SFTP Upload - Web
uses: wangyucode/sftp-upload-action@v2.0.2
with:
host: 10.120.1.19
port: 22
username: ${{ secrets.WEB_USER }}
password: ${{ secrets.WEB_PASS }}
localDir: './workingdir2'
remoteDir: '/var/www/cstmimages/imgstor'
exclude: '*.git/*,*.git/,*.github/*,*.github/,README.md,.gitignore'
removeExtraFilesOnServer: true
# --- SFTP UPLOAD FIVEM ---
- name: SFTP Upload - Fivem
uses: wangyucode/sftp-upload-action@v2.0.2
with:
host: pelican.cstm.games
port: 2022
username: ${{ secrets.FIVEMDEVSFTP }}
password: ${{ secrets.FIVEMDEVSFTPPASS }}
localDir: './workingdir2'
remoteDir: '/resources/[GRAPHICS]/'
exclude: '*.git/*,*.git/,*.github/*,*.github/,README.md,.gitignore'
removeExtraFilesOnServer: true
# --- MOVE CODE BACK ---
- name: Put It All Back
run: |
mv ./workingdir2/* ./
# --- ENDING DISCORD NOTIFICATION ---
- name: Send Ending Notification to Discord
if: always()
run: |
curl -H "Content-Type: application/json" \
-d "{
\"username\": \"Fred The Builder\",
\"avatar_url\": \"https://i.imgur.com/tgpIa7T.png\",
\"embeds\": [
{
\"title\": \"Completed IMAGESTOR WEB CI\",
\"description\": \"Commit: https://git.cstmgames.dev/${GITHUB_REPOSITORY}/commit/${GITHUB_SHA} is now live on the Dev server.\",
\"color\": 2852499
}
]
}" \
"${{ secrets.DISCORD_WEBHOOK }}"