forked from shiptest-ss13/Shiptest
-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #69 from gear-space/shiptest-sync-nov5
Shiptest sync nov5
- Loading branch information
Showing
1,024 changed files
with
82,229 additions
and
23,459 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,17 +3,34 @@ on: | |
push: | ||
branches: | ||
- master | ||
- "project/**" | ||
pull_request: | ||
branches: | ||
- master | ||
- "project/**" | ||
merge_group: | ||
branches: | ||
- master | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
start_gate: | ||
if: ( !contains(github.event.head_commit.message, '[ci skip]') ) | ||
name: Start Gate | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Mandatory Empty Step | ||
run: exit 0 | ||
|
||
run_linters: | ||
if: ${{ ! contains(github.event.head_commit.message, '[ci skip]') }} | ||
name: Run Linters | ||
needs: start_gate | ||
runs-on: ubuntu-22.04 | ||
timeout-minutes: 20 | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
with: | ||
|
@@ -53,40 +70,62 @@ jobs: | |
run: | | ||
pip3 install setuptools | ||
bash tools/ci/install_node.sh | ||
bash tools/ci/install_spaceman_dmm.sh dreamchecker | ||
cargo install ripgrep --features pcre2 | ||
tools/bootstrap/python -c '' | ||
- name: Run Linters | ||
- name: Give Linters A Go | ||
id: linter-setup | ||
run: exit 0 | ||
- name: Run Grep Checks | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: bash tools/ci/check_grep.sh | ||
- name: Run DreamChecker | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: ~/dreamchecker 2>&1 | bash tools/ci/annotate_dm.sh | ||
- name: Run Map Checks | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: | | ||
tools/bootstrap/python -m tools.maplint.source --github | ||
tools/build/build --ci lint tgui-test | ||
bash tools/ci/check_filedirs.sh shiptest.dme | ||
bash tools/ci/check_changelogs.sh | ||
bash tools/ci/check_misc.sh | ||
bash tools/ci/check_grep.sh | ||
tools/bootstrap/python -m dmi.test | ||
tools/bootstrap/python -m mapmerge2.dmm_test | ||
~/dreamchecker > ${GITHUB_WORKSPACE}/output-annotations.txt 2>&1 | ||
- name: Annotate Lints | ||
if: always() | ||
uses: yogstation13/DreamAnnotate@v2 | ||
with: | ||
outputFile: output-annotations.txt | ||
|
||
- name: Run Check Regex | ||
tools/bootstrap/python -m tools.maplint.source | ||
- name: Run DMI Tests | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: tools/bootstrap/python -m dmi.test | ||
- name: Check File Directories | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: bash tools/ci/check_filedirs.sh shiptest.dme | ||
- name: Check Changelogs | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: bash tools/ci/check_changelogs.sh | ||
- name: Check Miscellaneous Files | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: bash tools/ci/check_misc.sh | ||
- name: Run TGUI Checks | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: tools/build/build --ci lint tgui-test | ||
- name: Run Regex Checks | ||
if: steps.linter-setup.conclusion == 'success' && !cancelled() | ||
run: | | ||
tools/bootstrap/python -m ci.check_regex --log-changes-only --github-actions | ||
cat check_regex_output.txt | ||
- name: Install OpenDream | ||
uses: robinraju/[email protected] | ||
with: | ||
repository: "OpenDreamProject/OpenDream" | ||
tag: "latest" | ||
fileName: "DMCompiler_linux-x64.tar.gz" | ||
extract: true | ||
|
||
- name: Annotate Regex Matches | ||
- name: Run OpenDream Linter | ||
run: | | ||
cat check_regex_output.txt | ||
./DMCompiler_linux-x64/DMCompiler shiptest.dme --suppress-unimplemented --define=CIBUILDING | bash tools/ci/annotate_od.sh | ||
compile_all_maps: | ||
if: ${{ ! contains(github.event.head_commit.message, '[ci skip]') }} | ||
name: Compile Maps | ||
needs: start_gate | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 5 | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
|
||
|
@@ -106,39 +145,41 @@ jobs: | |
tools/build/build --ci dm -DCIBUILDING -DCITESTING -DALL_MAPS -DFULL_INIT | ||
run_all_tests: | ||
if: ${{ ! contains(github.event.head_commit.message, '[ci skip]') }} | ||
name: Integration Tests | ||
needs: start_gate | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
arg: [ | ||
"BASIC_TESTS", | ||
"CREATE_AND_DESTROY_TEST", | ||
"PLANET_GEN_TEST", | ||
"RUIN_PLACEMENT_TEST", | ||
"SHIP_PLACEMENT_TEST" | ||
] | ||
arg: | ||
[ | ||
"BASIC_TESTS", | ||
"CREATE_AND_DESTROY_TEST", | ||
"PLANET_GEN_TEST", | ||
"RUIN_PLACEMENT_TEST", | ||
"SHIP_PLACEMENT_TEST", | ||
] | ||
uses: ./.github/workflows/run_integration_tests.yml | ||
with: | ||
arg: ${{ matrix.arg }} | ||
|
||
# run_alternate_tests: | ||
# if: "!contains(github.event.head_commit.message, '[ci skip]')" | ||
# name: Alternate Tests | ||
# strategy: | ||
# fail-fast: false | ||
# matrix: | ||
# major: [515] | ||
# minor: [1614] | ||
# uses: ./.github/workflows/run_integration_tests.yml | ||
# with: | ||
# major: ${{ matrix.major }} | ||
# minor: ${{ matrix.minor }} | ||
# run_alternate_tests: | ||
# if: "!contains(github.event.head_commit.message, '[ci skip]')" | ||
# name: Alternate Tests | ||
# strategy: | ||
# fail-fast: false | ||
# matrix: | ||
# major: [515] | ||
# minor: [1614] | ||
# uses: ./.github/workflows/run_integration_tests.yml | ||
# with: | ||
# major: ${{ matrix.major }} | ||
# minor: ${{ matrix.minor }} | ||
|
||
test_windows: | ||
if: ${{ ! contains(github.event.head_commit.message, '[ci skip]') }} | ||
name: Windows Build | ||
needs: start_gate | ||
runs-on: windows-latest | ||
timeout-minutes: 5 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
|
||
|
@@ -163,7 +204,18 @@ jobs: | |
bash tools/deploy.sh ./deploy | ||
- name: Deploy artifact | ||
uses: actions/upload-artifact@v3 | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: deploy | ||
path: deploy | ||
|
||
completion_gate: # Serves as a non-moving target for branch rulesets | ||
if: always() && !cancelled() | ||
name: Completion Gate | ||
needs: [test_windows, compile_all_maps, run_linters, run_all_tests] | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Decide whether the needed jobs succeeded or failed | ||
uses: re-actors/alls-green@release/v1 | ||
with: | ||
jobs: ${{ toJSON(needs) }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
// This file is included right at the start of the DME. | ||
// Its purpose is to enable multiple lints (pragmas) that are supported by OpenDream to better validate the codebase | ||
// These are essentially nitpicks the DM compiler should pick up on but doesnt | ||
|
||
#if !defined(SPACEMAN_DMM) && defined(OPENDREAM) | ||
// This is in a separate file as a hack to avoid SpacemanDMM | ||
// evaluating the #pragma lines, even if its outside a block it cares about | ||
// (Also so people can code-own it. Shoutout to AA) | ||
#include "tools/ci/od_lints.dm" | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.