Skip to content

[PGO] Windows x64 build Release Moz-Artifact #179

[PGO] Windows x64 build Release Moz-Artifact

[PGO] Windows x64 build Release Moz-Artifact #179

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# © 2023 Floorp Projects & Contributors
name: "(A) ⚒ Windows build"
on:
workflow_dispatch:
inputs:
release:
type: boolean
required: true
debug:
type: boolean
required: true
package-moz-artifact:
type: boolean
required: true
code-coverage:
type: boolean
required: true
profile-generate-mode:
type: boolean
default: false
required: true
run-name: ${{toJSON(inputs.profile-generate-mode) == 'true' && '[PGO] ' || ''}}Windows x64 build${{toJSON(inputs.debug) == 'true' && ' Debug' || ''}}${{toJSON(inputs.release) == 'true' && ' Release' || ''}}${{toJSON(inputs.package-moz-artifact) == 'true' && ' Moz-Artifact' || ''}}${{toJSON(inputs.code-coverage)=='true'&&' codecov'||''}}
jobs:
part-1:
name: Windows x64 build${{toJSON(inputs.debug) == 'true' && ' Debug' || ''}}${{toJSON(inputs.release) == 'true' && ' Release' || ''}}${{toJSON(inputs.package-moz-artifact) == 'true' && ' Moz-Artifact' || ''}}${{toJSON(inputs.code-coverage)=='true'&&' codecov'||''}}
uses: ./.github/workflows/windows_build.yml
secrets: inherit
with:
debug: ${{inputs.debug}}
package-moz-artifact: ${{ inputs.profile-generate-mode == 'true' && '' || inputs.package-moz-artifact }}
release: ${{inputs.release}}
code-coverage: ${{inputs.code-coverage}}
profile-generate-mode: ${{inputs.profile-generate-mode}}
part-2:
name: Windows x64 Generate Profile for Guided Optimazation
if: inputs.profile-generate-mode
needs: part-1
uses: ./.github/workflows/windows_pgo.yml
secrets: inherit
with:
browser-artifact-name: noraneko-win-amd64-profile-generate-mode
part-3:
name: Windows x64 build${{toJSON(inputs.debug) == 'true' && ' Debug' || ''}}${{toJSON(inputs.release) == 'true' && ' Release' || ''}}${{toJSON(inputs.package-moz-artifact) == 'true' && ' Moz-Artifact' || ''}}${{toJSON(inputs.code-coverage)=='true'&&' codecov'||''}}
if: inputs.profile-generate-mode
needs: part-2
uses: ./.github/workflows/windows_build.yml
secrets: inherit
with:
debug: ${{inputs.debug}}
package-moz-artifact: ${{inputs.package-moz-artifact}}
release: ${{inputs.release}}
code-coverage: ${{inputs.code-coverage}}
pgo_artifact_name: noraneko-win-amd64-profile-generate-output