mirror of
				https://github.com/R2Northstar/Northstar
				synced 2025-10-30 23:50:52 +01:00 
			
		
		
		
	Compare commits
	
		
			26 Commits
		
	
	
		
			v1.14.0-rc
			...
			v1.25.2-rc
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | e7e2d55c9b | ||
|   | ada52bb828 | ||
|   | 86085f5c91 | ||
|   | ad3601c607 | ||
|   | 904e6b00ef | ||
|   | 4c0f02ba4f | ||
|   | 06f551ef71 | ||
|   | ee9239f4ae | ||
|   | cfc1498753 | ||
|   | abf59ba5fe | ||
|   | 05a32ee30e | ||
|   | e595fa0a83 | ||
|   | 937a1cdbba | ||
|   | de87f41b45 | ||
|   | d6d2dfe47d | ||
|   | c829a40caa | ||
|   | a11a37e710 | ||
|   | 72e8e50d77 | ||
|   | 8fb1f315bb | ||
|   | 4dccb376ec | ||
|   | ec0491e1e3 | ||
|   | cd971e5c0d | ||
|   | 587363f257 | ||
|   | 711676ec8a | ||
|   | c447dcd04e | ||
|   | 1171a5fd2d | 
							
								
								
									
										20
									
								
								.github/workflows/add-to-project.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								.github/workflows/add-to-project.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,20 @@ | |||||||
|  | name: add-to-project | ||||||
|  |  | ||||||
|  | on: | ||||||
|  |   issues: | ||||||
|  |     types: | ||||||
|  |       - opened | ||||||
|  |   pull_request_target: | ||||||
|  |     types: | ||||||
|  |       - opened | ||||||
|  |  | ||||||
|  | jobs: | ||||||
|  |   add-to-project: | ||||||
|  |     name: Add to project | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/add-to-project@v0.5.0 | ||||||
|  |         with: | ||||||
|  |           project-url: "https://github.com/orgs/R2Northstar/projects/3" | ||||||
|  |           github-token: "${{ secrets.PROJECT_BOARD_TOKEN }}" | ||||||
|  |  | ||||||
							
								
								
									
										16
									
								
								.github/workflows/post-to-mastodon.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								.github/workflows/post-to-mastodon.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | |||||||
|  | name: Post-to-Mastodon | ||||||
|  | on: | ||||||
|  |   release: | ||||||
|  |     types: [published] | ||||||
|  |  | ||||||
|  | jobs: | ||||||
|  |   toot: | ||||||
|  |     runs-on: ubuntu-22.04 | ||||||
|  |     steps: | ||||||
|  |       - name: Send toot to Mastodon | ||||||
|  |         id: mastodon | ||||||
|  |         uses: cbrgm/mastodon-github-action@v2 | ||||||
|  |         with: | ||||||
|  |           message: "We just released Northstar ${{ github.event.release.tag_name }}\n\n${{ github.event.release.html_url }}" | ||||||
|  |           url: ${{ secrets.MASTODON_URL }} | ||||||
|  |           access-token: ${{ secrets.MASTODON_ACCESS_TOKEN }} | ||||||
| @@ -1,4 +1,4 @@ | |||||||
| name: Build | name: Release | ||||||
| on: | on: | ||||||
|   push: |   push: | ||||||
|     tags: |     tags: | ||||||
| @@ -17,66 +17,29 @@ env: | |||||||
|   NORTHSTAR_VERSION: ${{ github.ref_name }} |   NORTHSTAR_VERSION: ${{ github.ref_name }} | ||||||
|  |  | ||||||
| jobs: | jobs: | ||||||
|   build-launcher: |  | ||||||
|     runs-on: windows-2022 |  | ||||||
|     steps: |  | ||||||
|       - name: Checkout launcher repository |  | ||||||
|         uses: actions/checkout@v3 |  | ||||||
|         with: |  | ||||||
|           repository: R2Northstar/NorthstarLauncher |  | ||||||
|           ref: ${{ env.NORTHSTAR_VERSION }} |  | ||||||
|           path: northstar-launcher |  | ||||||
|       - name: Setup MSBuild |  | ||||||
|         uses: microsoft/setup-msbuild@v1.1 |  | ||||||
|       - name: Setup resource file version |  | ||||||
|         shell: bash |  | ||||||
|         working-directory: northstar-launcher |  | ||||||
|         run: | |  | ||||||
|           sed -i 's/DEV/${{ env.NORTHSTAR_VERSION }}/g' NorthstarLauncher/resources.rc |  | ||||||
|           FILEVERSION=$(echo ${{ env.NORTHSTAR_VERSION }} | tr '.' ',' | sed -E 's/-rc[0-9]+//' | tr -d '[:alpha:]') |  | ||||||
|           sed -i "s/0,0,0,1/${FILEVERSION}/g" NorthstarDLL/ns_version.h |  | ||||||
|       - name: Build Launcher |  | ||||||
|         working-directory: northstar-launcher |  | ||||||
|         run: | |  | ||||||
|           msbuild /p:Configuration=Release R2Northstar.sln |  | ||||||
|       - name: Upload launcher build as artifact |  | ||||||
|         uses: actions/upload-artifact@v3 |  | ||||||
|         with: |  | ||||||
|           name: northstar-launcher |  | ||||||
|           path: | |  | ||||||
|             northstar-launcher/x64/Release/Northstar.dll |  | ||||||
|             northstar-launcher/x64/Release/wsock32.dll |  | ||||||
|             northstar-launcher/x64/Release/NorthstarLauncher.exe |  | ||||||
|             northstar-launcher/x64/Release/*.txt |  | ||||||
|       - name: Upload debug build artifact |  | ||||||
|         uses: actions/upload-artifact@v3 |  | ||||||
|         with: |  | ||||||
|           name: launcher-debug-files |  | ||||||
|           path: | |  | ||||||
|             northstar-launcher/x64/Release/*.pdb |  | ||||||
|  |  | ||||||
|   build-northstar: |   build-northstar: | ||||||
|     needs: build-launcher |     runs-on: ubuntu-22.04 | ||||||
|     runs-on: ubuntu-20.04 |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Download compiled launcher |  | ||||||
|         uses: actions/download-artifact@v3 |  | ||||||
|         with: |  | ||||||
|           name: northstar-launcher |  | ||||||
|           path: northstar-launcher |  | ||||||
|       - name: Download DiscordRPC plugin |  | ||||||
|         run: |  | ||||||
|           wget "https://github.com/R2Northstar/NorthstarDiscordRPC/releases/download/v4/northstar-discord-rpc.zip" |  | ||||||
|       - name: Download compiled stubs |  | ||||||
|         run: |  | ||||||
|           wget "https://github.com/R2Northstar/NorthstarStubs/releases/download/v1/NorthstarStubs.zip" |  | ||||||
|       - name: Checkout release files |       - name: Checkout release files | ||||||
|         uses: actions/checkout@v3 |         uses: actions/checkout@v4 | ||||||
|         with: |         with: | ||||||
|           ref: ${{ env.NORTHSTAR_VERSION }} |           ref: ${{ env.NORTHSTAR_VERSION }} | ||||||
|           path: northstar |           path: northstar | ||||||
|  |       - name: Wait for launcher release build to be ready | ||||||
|  |         timeout-minutes: 30 # Only wait for 30 minutes. If we take longer, something probably broke | ||||||
|  |         run: | ||||||
|  |           bash northstar/wait_for_launcher_dl.sh $NORTHSTAR_VERSION | ||||||
|  |       - name: Download compiled launcher | ||||||
|  |         run: | ||||||
|  |           wget "https://github.com/R2Northstar/NorthstarLauncher/releases/download/${{ env.NORTHSTAR_VERSION }}/northstar-launcher.zip" | ||||||
|  |       - name: Download DiscordRPC plugin | ||||||
|  |         run: | ||||||
|  |           wget "https://github.com/R2Northstar/NorthstarDiscordRPC/releases/download/v9/northstar-discord-rpc.zip" | ||||||
|  |       - name: Download compiled stubs | ||||||
|  |         run: | ||||||
|  |           wget "https://github.com/R2Northstar/NorthstarStubs/releases/download/v1/NorthstarStubs.zip" | ||||||
|       - name: Checkout core mods |       - name: Checkout core mods | ||||||
|         uses: actions/checkout@v3 |         uses: actions/checkout@v4 | ||||||
|         with: |         with: | ||||||
|           repository: R2Northstar/NorthstarMods |           repository: R2Northstar/NorthstarMods | ||||||
|           ref: ${{ env.NORTHSTAR_VERSION }} |           ref: ${{ env.NORTHSTAR_VERSION }} | ||||||
| @@ -94,37 +57,34 @@ jobs: | |||||||
|           git ls-tree -r $NORTHSTAR_VERSION --name-only | xargs -L1 md5sum >> md5sum.txt |           git ls-tree -r $NORTHSTAR_VERSION --name-only | xargs -L1 md5sum >> md5sum.txt | ||||||
|       - name: Make folder structure |       - name: Make folder structure | ||||||
|         run: | |         run: | | ||||||
|           mv -v northstar/release/* northstar/. |           mv --verbose northstar/release/* northstar/. | ||||||
|           rm -d northstar/release |           rm --dir northstar/release | ||||||
|           mkdir -p northstar/R2Northstar/mods |           mkdir --parents northstar/R2Northstar/mods | ||||||
|           mkdir -p northstar/R2Northstar/plugins |           mkdir --parents northstar/R2Northstar/plugins | ||||||
|           mkdir -p northstar/bin/x64_retail |           mkdir --parents northstar/bin/x64_dedi | ||||||
|  |  | ||||||
|           unzip northstar-discord-rpc.zip |           unzip northstar-discord-rpc.zip -d northstar/R2Northstar/plugins | ||||||
|           mv -v DiscordRPC.dll northstar/R2Northstar/plugins |  | ||||||
|  |  | ||||||
|           mv -v northstar-launcher/wsock32.dll northstar/bin/x64_retail |  | ||||||
|           unzip NorthstarStubs.zip -d northstar/bin/x64_dedi |           unzip NorthstarStubs.zip -d northstar/bin/x64_dedi | ||||||
|  |           unzip northstar-launcher.zip -d northstar | ||||||
|           mv -v northstar-launcher/* northstar |  | ||||||
|           rsync -avr --exclude="Northstar.Coop" --exclude=".git*" northstar-mods/. northstar/R2Northstar/mods |           rsync -avr --exclude="Northstar.Coop" --exclude=".git*" northstar-mods/. northstar/R2Northstar/mods | ||||||
|       - name: Checkout Navmesh repository |       - name: Checkout Navmesh repository | ||||||
|         uses: actions/checkout@v3 |         uses: actions/checkout@v4 | ||||||
|         with: |         with: | ||||||
|           repository: R2Northstar/NorthstarNavs |           repository: R2Northstar/NorthstarNavs | ||||||
|           ref: 'v1' |           ref: 'v3' | ||||||
|           path: northstar-navs |           path: northstar-navs | ||||||
|       - name: Navmeshes setup |       - name: Navmeshes setup | ||||||
|         run: | |         run: | | ||||||
|           mkdir -p northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps |           mkdir --parents northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps | ||||||
|           mv -v northstar-navs/graphs northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps |           mv --verbose northstar-navs/graphs northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps | ||||||
|           mv -v northstar-navs/navmesh northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps |           mv --verbose northstar-navs/navmesh northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps | ||||||
|       - name: Cleanup root Northstar repository files |       - name: Cleanup root Northstar repository files | ||||||
|         working-directory: northstar |         working-directory: northstar | ||||||
|         run: | |         run: | | ||||||
|           rm -rf .git .github .gitignore *.md LICENSE thunderstore .ci.env.example |           rm -rf .git .github .gitignore *.md LICENSE thunderstore .ci.env.example *.sh | ||||||
|       - name: Upload |       - name: Upload | ||||||
|         uses: actions/upload-artifact@v3 |         uses: actions/upload-artifact@v4 | ||||||
|         with: |         with: | ||||||
|           name: Northstar.release.${{ env.NORTHSTAR_VERSION }} |           name: Northstar.release.${{ env.NORTHSTAR_VERSION }} | ||||||
|           path: northstar |           path: northstar | ||||||
| @@ -136,6 +96,9 @@ jobs: | |||||||
|       - name: Compute SHA-512 checksum |       - name: Compute SHA-512 checksum | ||||||
|         run: | |         run: | | ||||||
|           sha512sum Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip |           sha512sum Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip | ||||||
|  |           echo "\`\`\`" >> $GITHUB_STEP_SUMMARY | ||||||
|  |           sha512sum Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip >> $GITHUB_STEP_SUMMARY | ||||||
|  |           echo "\`\`\`" >> $GITHUB_STEP_SUMMARY | ||||||
|       - name: Upload zip to release draft |       - name: Upload zip to release draft | ||||||
|         uses: softprops/action-gh-release@v1 |         uses: softprops/action-gh-release@v1 | ||||||
|         if: startsWith(github.ref, 'refs/tags/v') && !contains(env.NORTHSTAR_VERSION, '-rc') |         if: startsWith(github.ref, 'refs/tags/v') && !contains(env.NORTHSTAR_VERSION, '-rc') | ||||||
| @@ -158,33 +121,33 @@ jobs: | |||||||
|       TS_NAMESPACE: northstar |       TS_NAMESPACE: northstar | ||||||
|       TS_MOD_NAME: Northstar |       TS_MOD_NAME: Northstar | ||||||
|       TS_MOD_DESCRIPTION: Titanfall 2 modding and custom server framework. |       TS_MOD_DESCRIPTION: Titanfall 2 modding and custom server framework. | ||||||
|     runs-on: ubuntu-20.04 |     runs-on: ubuntu-22.04 | ||||||
|     steps: |     steps: | ||||||
|       - name: Setup tcli |       - name: Setup tcli | ||||||
|         run: | |         run: | | ||||||
|           wget -O tcli.tar.gz https://github.com/thunderstore-io/thunderstore-cli/releases/download/0.1.4/tcli-0.1.4-linux-x64.tar.gz |           wget --output-document tcli.tar.gz https://github.com/thunderstore-io/thunderstore-cli/releases/download/0.1.4/tcli-0.1.4-linux-x64.tar.gz | ||||||
|           tar xvf tcli.tar.gz |           tar xvf tcli.tar.gz | ||||||
|           sudo mv -v tcli-0.1.4-linux-x64/tcli /bin |           sudo mv --verbose tcli-0.1.4-linux-x64/tcli /bin | ||||||
|  |  | ||||||
|       - name: (DEBUG) Download Northstar package |       - name: (DEBUG) Download Northstar package | ||||||
|         if: ${{ env.ACT }} # Download Northstar package from releases when running locally instead of relying on previous jobs |         if: ${{ env.ACT }} # Download Northstar package from releases when running locally instead of relying on previous jobs | ||||||
|         run: | |         run: | | ||||||
|           wget -O northstar.zip https://github.com/R2Northstar/Northstar/releases/download/v1.6.3/Northstar.release.v1.6.3.zip |           wget --output-document northstar.zip https://github.com/R2Northstar/Northstar/releases/download/v1.6.3/Northstar.release.v1.6.3.zip | ||||||
|           unzip northstar.zip -d northstar |           unzip northstar.zip -d northstar | ||||||
|  |  | ||||||
|       - name: Download Northstar package |       - name: Download Northstar package | ||||||
|         if: ${{ !env.ACT }} # Download artifacts from previous jobs when running on GitHub's infrastructure |         if: ${{ !env.ACT }} # Download artifacts from previous jobs when running on GitHub's infrastructure | ||||||
|         uses: actions/download-artifact@v3 |         uses: actions/download-artifact@v4 | ||||||
|         with: |         with: | ||||||
|           name: Northstar.release.${{ env.NORTHSTAR_VERSION }} |           name: Northstar.release.${{ env.NORTHSTAR_VERSION }} | ||||||
|           path: northstar |           path: northstar | ||||||
|  |  | ||||||
|       - name: Make package structure |       - name: Make package structure | ||||||
|         run: | |         run: | | ||||||
|           mkdir -p thunderstore/dist/Northstar |           mkdir --parents thunderstore/dist/Northstar | ||||||
|           mv -v northstar/* thunderstore/dist/Northstar |           mv --verbose northstar/* thunderstore/dist/Northstar | ||||||
|           wget -O thunderstore/icon.png https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/icon.png |           wget --output-document thunderstore/icon.png https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/icon.png | ||||||
|           wget -O thunderstore/README.md https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/README.md |           wget --output-document thunderstore/README.md https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/README.md | ||||||
|  |  | ||||||
|       - name: Setup environment variables |       - name: Setup environment variables | ||||||
|         run: | |         run: | | ||||||
| @@ -207,9 +170,9 @@ jobs: | |||||||
|         run: | |         run: | | ||||||
|           tcli init --package-name=$TS_MOD_NAME --package-namespace=$TS_NAMESPACE --package-version $MOD_VERSION |           tcli init --package-name=$TS_MOD_NAME --package-namespace=$TS_NAMESPACE --package-version $MOD_VERSION | ||||||
|  |  | ||||||
|           sed -i "s/communities = \[\]/communities = [\"$TS_COMMUNITY\"]/g" thunderstore.toml |           sed --in-place "s/communities = \[\]/communities = [\"$TS_COMMUNITY\"]/g" thunderstore.toml | ||||||
|           sed -i "s/Example-Dependency = \"1.0.0\"//g" thunderstore.toml |           sed --in-place "s/Example-Dependency = \"1.0.0\"//g" thunderstore.toml | ||||||
|           sed -i "s/description = \"Example mod description\"/description = \"$TS_MOD_DESCRIPTION\"/g" thunderstore.toml |           sed --in-place "s/description = \"Example mod description\"/description = \"$TS_MOD_DESCRIPTION\"/g" thunderstore.toml | ||||||
|           cat thunderstore.toml |           cat thunderstore.toml | ||||||
|  |  | ||||||
|           tcli build |           tcli build | ||||||
							
								
								
									
										26
									
								
								wait_for_launcher_dl.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										26
									
								
								wait_for_launcher_dl.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,26 @@ | |||||||
|  | #!/bin/bash | ||||||
|  |  | ||||||
|  | # Check if contains command line arg | ||||||
|  | if [ -z "$1" ]; then | ||||||
|  |     echo "Missing command-line argument." | ||||||
|  |     exit 1 | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | url="https://github.com/R2Northstar/NorthstarLauncher/releases/download/$1/northstar-launcher.zip" | ||||||
|  | wait_time_seconds=60 | ||||||
|  |  | ||||||
|  | # Loop until the response code changes | ||||||
|  | while true; do | ||||||
|  |     response=$(curl --silent --output /dev/null --write-out "%{http_code}" $url) | ||||||
|  |     if [ $response -eq 404 ]; then | ||||||
|  |         echo "Response is 404. Retrying in $wait_time_seconds seconds." | ||||||
|  |         sleep $wait_time_seconds | ||||||
|  |     else | ||||||
|  |         echo "Site is accessible with response code $response." | ||||||
|  |         break | ||||||
|  |     fi | ||||||
|  | done | ||||||
|  |  | ||||||
|  | # 10 second sleep just in case we hit some weird race condition | ||||||
|  | # where files are still being uploaded but release is done | ||||||
|  | sleep 10 | ||||||
		Reference in New Issue
	
	Block a user