CI: add windows build action
set setuptools to 60.x until the issue is resolved change retention to 7 days
This commit is contained in:
		
							parent
							
								
									a93b3d79aa
								
							
						
					
					
						commit
						2a593d5d0a
					
				| 
						 | 
				
			
			@ -5,9 +5,41 @@ name: Build
 | 
			
		|||
on: workflow_dispatch
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  # build-release-windows: # LF volunteer; RCs will still be built and signed by hand
 | 
			
		||||
  # build-release-macos: # LF volunteer
 | 
			
		||||
 | 
			
		||||
  build-win-py38: # RCs will still be built and signed by hand
 | 
			
		||||
    runs-on: windows-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
      - name: Install python
 | 
			
		||||
        uses: actions/setup-python@v3
 | 
			
		||||
        with:
 | 
			
		||||
          python-version: '3.8'
 | 
			
		||||
      - name: Download run-time dependencies
 | 
			
		||||
        run: |
 | 
			
		||||
          Invoke-WebRequest -Uri https://github.com/alttpo/sni/releases/download/v0.0.79/sni-v0.0.79-windows-amd64.zip -OutFile sni.zip
 | 
			
		||||
          Expand-Archive -Path sni.zip -DestinationPath SNI -Force
 | 
			
		||||
          Invoke-WebRequest -Uri https://github.com/Ijwu/Enemizer/releases/download/6.4/win-x64.zip -OutFile enemizer.zip
 | 
			
		||||
          Expand-Archive -Path enemizer.zip -DestinationPath EnemizerCLI -Force
 | 
			
		||||
      - name: Build
 | 
			
		||||
        run: |
 | 
			
		||||
          python -m pip install --upgrade pip setuptools==60.10.0  # 61 does not work with the current layout
 | 
			
		||||
          pip install -r requirements.txt
 | 
			
		||||
          python setup.py build --yes
 | 
			
		||||
          $NAME="$(ls build)".Split('.',2)[1]
 | 
			
		||||
          $ZIP_NAME="Archipelago_$NAME.7z"
 | 
			
		||||
          echo "ZIP_NAME=$ZIP_NAME" >> $Env:GITHUB_ENV
 | 
			
		||||
          New-Item -Path dist -ItemType Directory -Force
 | 
			
		||||
          cd build
 | 
			
		||||
          Rename-Item exe.$NAME Archipelago
 | 
			
		||||
          7z a -mx=9 -mhe=on -ms "../dist/$ZIP_NAME" Archipelago
 | 
			
		||||
      - name: Store 7z
 | 
			
		||||
        uses: actions/upload-artifact@v2
 | 
			
		||||
        with:
 | 
			
		||||
          name: ${{ env.ZIP_NAME }}
 | 
			
		||||
          path: dist/${{ env.ZIP_NAME }}
 | 
			
		||||
          retention-days: 7  # keep for 7 days, should be enough
 | 
			
		||||
 | 
			
		||||
  build-ubuntu1804:
 | 
			
		||||
    runs-on: ubuntu-18.04
 | 
			
		||||
    steps:
 | 
			
		||||
| 
						 | 
				
			
			@ -39,7 +71,8 @@ jobs:
 | 
			
		|||
          7za x -oEnemizerCLI/ ubuntu.16.04-x64.7z
 | 
			
		||||
      - name: Build
 | 
			
		||||
        run: |
 | 
			
		||||
          "${{ env.PYTHON }}" -m pip install --upgrade pip setuptools virtualenv PyGObject  # pygobject should probably move to requirements
 | 
			
		||||
          # pygobject is an optional dependency for kivy that's not in requirements
 | 
			
		||||
          "${{ env.PYTHON }}" -m pip install --upgrade pip virtualenv PyGObject setuptools==60.10.0  # setuptools same as windows
 | 
			
		||||
          "${{ env.PYTHON }}" -m venv venv
 | 
			
		||||
          source venv/bin/activate
 | 
			
		||||
          pip install -r requirements.txt
 | 
			
		||||
| 
						 | 
				
			
			@ -56,8 +89,10 @@ jobs:
 | 
			
		|||
        with:
 | 
			
		||||
          name: ${{ env.APPIMAGE_NAME }}
 | 
			
		||||
          path: dist/${{ env.APPIMAGE_NAME }}
 | 
			
		||||
          retention-days: 7
 | 
			
		||||
      - name: Store .tar.gz
 | 
			
		||||
        uses: actions/upload-artifact@v2
 | 
			
		||||
        with:
 | 
			
		||||
          name: ${{ env.TAR_NAME }}
 | 
			
		||||
          path: dist/${{ env.TAR_NAME }}
 | 
			
		||||
          retention-days: 7
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue