name: Publish concurrency: group: publish on: workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - name: Install dependencies run: sudo apt-get install -y python3-paramiko python3-lxml - uses: actions/checkout@v3.6.0 with: submodules: 'recursive' - name: Setup .NET Core uses: actions/setup-dotnet@v3.2.0 with: dotnet-version: '8.0.205' - name: Get Engine Tag run: | cd RobustToolbox git fetch --depth=1 - name: Update Directory.Packages.props run: | dotnet --list-sdks cp -f global.json RobustToolbox/ - 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: Update Build Info run: Tools/gen_build_info.py - name: Shuffle files around run: | mkdir "release/${{ github.sha }}" mv release/*.zip "release/${{ github.sha }}" - name: Upload files to hive uses: burnett01/rsync-deployments@5.2 with: switches: -avzr --ignore-existing path: "release/${{ github.sha }}" remote_path: ${{ secrets.BUILDS_PATH }} remote_host: ${{ secrets.BUILDS_HOST }} remote_port: ${{ secrets.BUILDS_PORT }} remote_user: ${{ secrets.BUILDS_USERNAME }} remote_key: ${{ secrets.BUILDS_SSH_KEY }} remote_key_pass: ${{ secrets.BUILDS_SSH_KEY_PASS }} - name: Update manifest JSON uses: appleboy/ssh-action@master with: host: ${{ secrets.BUILDS_HOST }} port: ${{ secrets.BUILDS_PORT }} username: ${{ secrets.BUILDS_USERNAME }} key: ${{ secrets.BUILDS_SSH_KEY }} passphrase: ${{ secrets.BUILDS_SSH_KEY_PASS }} script: sh ~/ss14/anvil/cortice.sh ${{ github.sha }} - name: Publish changelog (Discord) continue-on-error: true run: | Tools/actions_changelogs_since_last_run.py exit 1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} DISCORD_WEBHOOK_URL: ${{ secrets.CHANGELOG_DISCORD_WEBHOOK }} - name: Publish changelog (RSS) continue-on-error: true run: | Tools/actions_changelog_rss.py exit 1 env: CHANGELOG_RSS_KEY: ${{ secrets.CHANGELOG_RSS_KEY }}