cmder/.github/workflows/build.yml

91 lines
2.1 KiB
YAML
Raw Normal View History

2022-10-15 01:45:46 +08:00
#---------------------------------#
# general configuration #
#---------------------------------#
name: Build Cmder
# Controls when the action will run. Triggers the workflow on push or pull request events but only for the main branch
on:
push:
branches: [ "master" ]
tags:
- "v*"
2022-10-15 01:45:46 +08:00
pull_request:
branches: [ "master" ]
#---------------------------------#
# environment configuration #
#---------------------------------#
env:
# Path to the root of the Cmder project.
CMDER_ROOT: ${{ github.workspace }}
2022-10-15 01:45:46 +08:00
permissions:
contents: read
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
build:
2022-10-15 01:55:15 +08:00
name: Build Project
2022-10-15 01:45:46 +08:00
runs-on: windows-latest
2023-07-24 22:04:16 +08:00
permissions:
contents: write
discussions: write
2022-10-15 01:45:46 +08:00
steps:
- name: Check out repository code (Action from GitHub)
uses: actions/checkout@v4
2022-10-15 09:01:56 +08:00
with:
fetch-depth: 0
2022-10-15 01:45:46 +08:00
- name: Add MSBuild to PATH
2022-10-15 01:55:15 +08:00
uses: microsoft/setup-msbuild@v1
2022-10-15 01:45:46 +08:00
- name: Build Cmder Launcher
shell: pwsh
working-directory: scripts
run: .\build.ps1 -Compile -verbose
2022-10-15 02:18:40 +08:00
- name: Pack the built files
2022-10-15 01:45:46 +08:00
shell: pwsh
working-directory: scripts
run: .\pack.ps1 -verbose
2022-10-15 07:00:45 +08:00
- name: Upload artifact (cmder.zip)
2022-10-15 01:45:46 +08:00
uses: actions/upload-artifact@v3
with:
2022-10-15 07:00:45 +08:00
path: build/cmder.zip
name: cmder.zip
2022-10-15 01:45:46 +08:00
if-no-files-found: error
2022-10-15 07:00:45 +08:00
- name: Upload artifact (cmder.7z)
uses: actions/upload-artifact@v3
with:
path: build/cmder.7z
name: cmder.7z
- name: Upload artifact (cmder_mini.zip)
uses: actions/upload-artifact@v3
with:
path: build/cmder_mini.zip
name: cmder_mini.zip
- name: Upload artifact (hashes.txt)
uses: actions/upload-artifact@v3
with:
path: build/hashes.txt
name: hashes.txt
- name: Create Release
uses: softprops/action-gh-release@v1
with:
files: |
build/cmder.zip
build/cmder.7z
build/cmder_mini.zip
build/hashes.txt
draft: true
generate_release_notes: true
if: startsWith(github.ref, 'refs/tags/')