63 lines
2.5 KiB
YAML
63 lines
2.5 KiB
YAML
environment: &environment
|
|
GAME_NAME: impostor
|
|
GAME_LANG: lua
|
|
|
|
steps:
|
|
- name: version
|
|
image: alpine
|
|
commands:
|
|
- "META_HEADER_PATH=./src/meta/meta.header.${GAME_LANG}"
|
|
- "VERSION=$(sed -n 's/^-- version: //p' $META_HEADER_PATH | head -n 1 | tr -d '[:space:]')"
|
|
- "echo VERSION is: $VERSION"
|
|
- "echo $VERSION > .version"
|
|
- "cat .version"
|
|
|
|
- name: build
|
|
image: git.teletype.hu/internal/tic80pro:latest
|
|
environment:
|
|
<<: *environment
|
|
XDG_RUNTIME_DIR: /tmp
|
|
commands:
|
|
- "apt-get update && apt-get install -y zip"
|
|
- "cat .version"
|
|
- "export VERSION=$(cat .version)"
|
|
- "echo Building version: $VERSION"
|
|
- "make build"
|
|
- "make export VERSION=$VERSION"
|
|
- "echo Generated files:"
|
|
- "ls -lh $GAME_NAME-*.* $GAME_NAME.tic $GAME_NAME.html.zip"
|
|
|
|
- name: artifact
|
|
image: alpine
|
|
environment:
|
|
<<: *environment
|
|
DROPAREA_HOST: vps.teletype.hu
|
|
DROPAREA_PORT: 2223
|
|
DROPAREA_TARGET_PATH: /home/drop
|
|
DROPAREA_USER: drop
|
|
DROPAREA_SSH_PASSWORD:
|
|
from_secret: droparea_ssh_password
|
|
commands:
|
|
- "apk add --no-cache openssh-client sshpass"
|
|
- "mkdir -p /root/.ssh"
|
|
- "export VERSION=$(cat .version)"
|
|
- "echo VERSION artifact step: $VERSION"
|
|
- "echo SCP Target Path: $DROPAREA_TARGET_PATH/$GAME_NAME/$VERSION/"
|
|
- "sshpass -p $DROPAREA_SSH_PASSWORD ssh -p $DROPAREA_PORT -o StrictHostKeyChecking=no $DROPAREA_USER@$DROPAREA_HOST mkdir -p $DROPAREA_TARGET_PATH/$GAME_NAME/$VERSION"
|
|
- "echo Files to upload:"
|
|
- "ls -lh $GAME_NAME-$VERSION.* $GAME_NAME.tic $GAME_NAME.html.zip"
|
|
- "sshpass -p $DROPAREA_SSH_PASSWORD scp -o StrictHostKeyChecking=no -P $DROPAREA_PORT $GAME_NAME-$VERSION.tic $GAME_NAME-$VERSION.html.zip $DROPAREA_USER@$DROPAREA_HOST:$DROPAREA_TARGET_PATH/$GAME_NAME/$VERSION/"
|
|
- "sshpass -p $DROPAREA_SSH_PASSWORD scp -o StrictHostKeyChecking=no -P $DROPAREA_PORT $GAME_NAME.$GAME_LANG $GAME_NAME.tic $GAME_NAME.html.zip $DROPAREA_USER@$DROPAREA_HOST:$DROPAREA_TARGET_PATH/$GAME_NAME/$VERSION/"
|
|
|
|
- name: update
|
|
image: alpine
|
|
environment:
|
|
<<: *environment
|
|
UPDATE_SERVER: https://games.vps.teletype.hu
|
|
UPDATE_SECRET:
|
|
from_secret: update_secret_key
|
|
commands:
|
|
- "apk add --no-cache curl"
|
|
- "export VERSION=$(cat .version)"
|
|
- "echo Triggering update for version $VERSION"
|
|
- "curl $UPDATE_SERVER/update?secret=$UPDATE_SECRET&name=$GAME_NAME&platform=tic80&version=$VERSION" |