Skip to content

Publish

Publish #146

Workflow file for this run

name: Publish
concurrency:
group: publish
on:
workflow_dispatch:
# schedule:
# - cron: '0 10 * * *'
jobs:
build:
runs-on: ubuntu-latest
environment:
name: prod
steps:
- name: Install dependencies
run: sudo apt-get install -y python3-paramiko python3-lxml
- uses: actions/[email protected]
with:
submodules: 'recursive'
fetch-depth: 0
- name: Fetch all tags and branches (RobustToolbox)
run: |
cd RobustToolbox
git fetch --all --tags
- name: Debug tags for RobustToolbox
run: |
cd RobustToolbox
git tag
- name: Setup .NET Core
uses: actions/[email protected]
with:
dotnet-version: 9.0.x
- name: Get Engine Tag
run: |
cd RobustToolbox
git fetch --depth=1
- name: Install dependencies
run: dotnet restore
- name: Build Packaging
run: dotnet build Content.Packaging --configuration Release --no-restore /m
- name: Package server
run: dotnet run --project Content.Packaging server --platform win-x64 --platform linux-x64 --platform osx-x64 --platform linux-arm64
- name: Package client
run: dotnet run --project Content.Packaging client --no-wipe-release
- name: Publish version
run: Tools/publish_multi_request.py
env:
PUBLISH_TOKEN: ${{ secrets.PUBLISH_TOKEN }}
GITHUB_REPOSITORY: ${{ vars.GITHUB_REPOSITORY }}
- name: Set up SSH (Discord)
env:
ACTIONS_SSH_KEY: ${{ secrets.ACTIONS_SSH_KEY }}
TEST: ${{ secrets.TEST }}
run: |
mkdir -p ~/.ssh
echo "$ACTIONS_SSH_KEY" | tr -d '\r' > ~/.ssh/id_ed25519
echo "$TEST"
chmod 600 ~/.ssh/id_ed25519
ssh-keyscan github.com >> ~/.ssh/known_hosts
- name: Test SSH Connection (Discord)
run: ssh -T [email protected] || exit 0
- name: Publish changelog (Discord)
run: Tools/actions_changelogs_since_last_run.py
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_REPOSITORY: ${{ vars.GITHUB_REPOSITORY }}
DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }}
- name: Commit and push sended changelogs (Discord)
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add "Resources/Changelog/ChangelogStarlight.yml"
git add "Tools/changelogs/sent_changelog_ids.yml"
git commit -m "Update sended changelogs [skip ci]"
git push [email protected]:${{ github.repository }}.git HEAD:Starlight
- name: Publish changelog (RSS)
run: Tools/actions_changelog_rss.py
env:
CHANGELOG_RSS_KEY: ${{ secrets.CHANGELOG_RSS_KEY }}