diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index ba365bfe4f..0000000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,7 +0,0 @@ -## Version of OpenTTD - -## Expected result - -## Actual result - -## Steps to reproduce diff --git a/.github/workflows/preview_build.yml b/.github/workflows/preview_build.yml deleted file mode 100644 index 68ca5f083f..0000000000 --- a/.github/workflows/preview_build.yml +++ /dev/null @@ -1,133 +0,0 @@ -name: Preview build - -on: - repository_dispatch: - types: - - Preview* - -jobs: - preview: - name: Build preview - - runs-on: ubuntu-20.04 - container: - # If you change this version, change the number in the cache step too. - image: emscripten/emsdk:3.1.28 - - steps: - - name: Update deployment status to in progress - uses: octokit/request-action@v2.x - with: - route: POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses - mediaType: | - previews: - - ant-man - - flash - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - deployment_id: ${{ github.event.client_payload.deployment_id }} - state: in_progress - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - name: Checkout - uses: actions/checkout@v3 - with: - ref: ${{ github.event.client_payload.sha }} - - - name: Name branch - run: | - name=$(echo "${{ github.event.client_payload.folder }}") - git checkout -b ${name} - - - name: Setup cache - uses: actions/cache@v3 - with: - path: /emsdk/upstream/emscripten/cache - key: 3.1.28-${{ runner.os }} - - - name: Patch Emscripten to support LZMA - run: | - cd /emsdk/upstream/emscripten - patch -p1 < ${GITHUB_WORKSPACE}/os/emscripten/emsdk-liblzma.patch - - - name: Build (host tools) - run: | - mkdir build-host - cd build-host - - echo "::group::CMake" - cmake .. -DOPTION_TOOLS_ONLY=ON - echo "::endgroup::" - - echo "::group::Build" - echo "Running on $(nproc) cores" - make -j$(nproc) tools - echo "::endgroup::" - - - name: Install GCC problem matcher - uses: ammaraskar/gcc-problem-matcher@master - - - name: Build - run: | - mkdir build - cd build - - echo "::group::CMake" - emcmake cmake .. \ - -DHOST_BINARY_DIR=../build-host \ - -DCMAKE_BUILD_TYPE=Release \ - # EOF - echo "::endgroup::" - - echo "::group::Build" - echo "Running on $(nproc) cores" - emmake make -j$(nproc) - echo "::endgroup::" - - - name: Publish preview - run: | - pip3 install awscli - - aws s3 cp --only-show-errors build/openttd.data s3://${{ secrets.PREVIEW_S3_BUCKET }}/${{ github.event.client_payload.folder }}/ - aws s3 cp --only-show-errors build/openttd.html s3://${{ secrets.PREVIEW_S3_BUCKET }}/${{ github.event.client_payload.folder }}/ - aws s3 cp --only-show-errors build/openttd.js s3://${{ secrets.PREVIEW_S3_BUCKET }}/${{ github.event.client_payload.folder }}/ - aws s3 cp --only-show-errors build/openttd.wasm s3://${{ secrets.PREVIEW_S3_BUCKET }}/${{ github.event.client_payload.folder }}/ - - # Invalidate the cache of the CloudFront distribution - aws cloudfront create-invalidation --distribution-id ${{ secrets.PREVIEW_CF_DISTRIBUTION_ID }} --paths "/${{ github.event.client_payload.folder }}/*" - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - - - name: Update deployment status to success - uses: octokit/request-action@v2.x - with: - route: POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses - mediaType: | - previews: - - ant-man - - flash - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - deployment_id: ${{ github.event.client_payload.deployment_id }} - state: success - environment_url: https://preview.openttd.org/${{ github.event.client_payload.folder }}/ - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - if: failure() - name: Update deployment status to failure - uses: octokit/request-action@v2.x - with: - route: POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses - mediaType: | - previews: - - ant-man - - flash - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - deployment_id: ${{ github.event.client_payload.deployment_id }} - state: failure - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} diff --git a/.github/workflows/preview_label.yml b/.github/workflows/preview_label.yml deleted file mode 100644 index 503d4e53eb..0000000000 --- a/.github/workflows/preview_label.yml +++ /dev/null @@ -1,66 +0,0 @@ -name: Preview label - -on: - pull_request_target: - types: - - labeled - -env: - TEAM_CORE_DEVELOPER: core-developers - -jobs: - check_preview_label: - name: Check for preview label - if: github.event.action == 'labeled' && github.event.label.name == 'preview' - - runs-on: ubuntu-20.04 - - steps: - - name: Check if label was added by core developer - id: core_developer - continue-on-error: true - uses: octokit/request-action@v2.x - with: - route: GET /orgs/OpenTTD/teams/${{ env.TEAM_CORE_DEVELOPER }}/memberships/${{ github.event.sender.login }} - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - if: steps.core_developer.outcome == 'failure' - name: Remove preview label if not core developer - uses: octokit/request-action@v2.x - with: - route: DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/preview - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - issue_number: ${{ github.event.number }} - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - if: steps.core_developer.outcome == 'success' - name: Create deployment - id: deployment - uses: octokit/request-action@v2.x - with: - route: POST /repos/{owner}/{repo}/deployments - mediaType: | - previews: - - ant-man - - flash - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - ref: ${{ github.event.pull_request.head.sha }} - task: deploy:preview - auto_merge: false - required_contexts: "[]" - environment: preview-pr-${{ github.event.number }} - description: "Preview for Pull Request #${{ github.event.number }}" - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - if: steps.core_developer.outcome == 'success' - name: Trigger 'preview build' - uses: peter-evans/repository-dispatch@v2 - with: - token: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - event-type: "Preview build #${{ github.event.number }}" - client-payload: '{"folder": "pr${{ github.event.number }}", "sha": "${{ github.event.pull_request.head.sha }}", "deployment_id": "${{ fromJson(steps.deployment.outputs.data).id }}"}' diff --git a/.github/workflows/preview_push.yml b/.github/workflows/preview_push.yml deleted file mode 100644 index 3868c16f90..0000000000 --- a/.github/workflows/preview_push.yml +++ /dev/null @@ -1,66 +0,0 @@ -name: Preview push - -on: - pull_request_target: - types: - - synchronize - -jobs: - check_new_preview: - name: Check preview needs update - - runs-on: ubuntu-20.04 - - steps: - - name: Check if earlier preview exists - id: earlier_preview - uses: octokit/request-action@v2.x - with: - route: GET /repos/{owner}/{repo}/deployments - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - environment: preview-pr-${{ github.event.number }} - per_page: 1 - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - if: toJson(fromJson(steps.earlier_preview.outputs.data)) != '[]' - name: Check for preview label - id: preview_label - uses: octokit/request-action@v2.x - with: - route: GET /repos/{owner}/{repo}/issues/{issue_number}/labels - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - issue_number: ${{ github.event.number }} - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - if: toJson(fromJson(steps.earlier_preview.outputs.data)) != '[]' && contains(fromJson(steps.preview_label.outputs.data).*.name, 'preview') - name: Create deployment - id: deployment - uses: octokit/request-action@v2.x - with: - route: POST /repos/{owner}/{repo}/deployments - mediaType: | - previews: - - ant-man - - flash - owner: ${{ github.event.repository.owner.login }} - repo: ${{ github.event.repository.name }} - ref: ${{ github.event.pull_request.head.sha }} - task: deploy:preview - auto_merge: false - required_contexts: "[]" - environment: preview-pr-${{ github.event.number }} - description: "Preview for Pull Request #${{ github.event.number }}" - env: - GITHUB_TOKEN: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - - - if: toJson(fromJson(steps.earlier_preview.outputs.data)) != '[]' && contains(fromJson(steps.preview_label.outputs.data).*.name, 'preview') - name: Trigger 'preview build' - uses: peter-evans/repository-dispatch@v2 - with: - token: ${{ secrets.PREVIEW_GITHUB_TOKEN }} - event-type: "Preview build #${{ github.event.number }}" - client-payload: '{"folder": "pr${{ github.event.number }}", "sha": "${{ github.event.pull_request.head.sha }}", "deployment_id": "${{ fromJson(steps.deployment.outputs.data).id }}"}' diff --git a/.github/workflows/upload-aws.yml b/.github/workflows/upload-aws.yml deleted file mode 100644 index 72319ad5ab..0000000000 --- a/.github/workflows/upload-aws.yml +++ /dev/null @@ -1,76 +0,0 @@ -name: Upload (AWS) - -on: - workflow_call: - inputs: - version: - required: true - type: string - folder: - required: true - type: string - trigger_type: - required: true - type: string - -jobs: - upload: - name: Upload (AWS) - - runs-on: ubuntu-20.04 - - steps: - - name: Download all bundles - uses: actions/download-artifact@v3 - - - name: Calculate checksums - run: | - echo "::group::Move bundles to a single folder" - mkdir bundles - mv openttd-*/* bundles/ - echo "::endgroup::" - - cd bundles - for i in $(ls openttd-*); do - echo "::group::Calculating checksums for ${i}" - openssl dgst -r -md5 -hex $i > $i.md5sum - openssl dgst -r -sha1 -hex $i > $i.sha1sum - openssl dgst -r -sha256 -hex $i > $i.sha256sum - echo "::endgroup::" - done - - # Some targets generate files that are meant for our-eyes-only. - # They are stored in the "internal" folder, and contains bundles - # for targets like Windows Store. No user has a benefit of knowing - # they exist, hence: internal. - if [ -e internal ]; then - cd internal - for i in $(ls openttd-*); do - echo "::group::Calculating checksums for ${i}" - openssl dgst -r -md5 -hex $i > $i.md5sum - openssl dgst -r -sha1 -hex $i > $i.sha1sum - openssl dgst -r -sha256 -hex $i > $i.sha256sum - echo "::endgroup::" - done - fi - - - name: Upload bundles to AWS - run: | - aws s3 cp --recursive --only-show-errors bundles/ s3://${{ secrets.CDN_S3_BUCKET }}/${{ inputs.folder }}/${{ inputs.version }}/ - - # We do not invalidate the CloudFront distribution here. The trigger - # for "New OpenTTD release" first updated the manifest files and - # creates an index.html. We invalidate after that, so everything - # becomes visible at once. - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - AWS_DEFAULT_REGION: ${{ secrets.AWS_REGION }} - - - name: Trigger 'New OpenTTD release' - uses: peter-evans/repository-dispatch@v2 - with: - token: ${{ secrets.DEPLOYMENT_TOKEN }} - repository: OpenTTD/workflows - event-type: ${{ inputs.trigger_type }} - client-payload: '{"version": "${{ inputs.version }}", "folder": "${{ inputs.folder }}"}'