mirror of
https://github.com/microsoft/playwright-java.git
synced 2025-09-08 21:01:00 +00:00
82 lines
3.1 KiB
YAML
82 lines
3.1 KiB
YAML
trigger: none
|
|
pr: none
|
|
|
|
resources:
|
|
repositories:
|
|
- repository: 1esPipelines
|
|
type: git
|
|
name: 1ESPipelineTemplates/1ESPipelineTemplates
|
|
ref: refs/tags/release
|
|
|
|
extends:
|
|
template: v1/1ES.Official.PipelineTemplate.yml@1esPipelines
|
|
parameters:
|
|
pool:
|
|
name: DevDivPlaywrightAzurePipelinesUbuntu2204
|
|
os: linux
|
|
sdl:
|
|
sourceAnalysisPool:
|
|
name: DevDivPlaywrightAzurePipelinesWindows2022
|
|
# The image must be windows-based due to restrictions of the SDL tools. See: https://aka.ms/AAo6v8e
|
|
# In the case of a windows build, this can be the same as the above pool image.
|
|
os: windows
|
|
suppression:
|
|
suppressionFile: $(Build.SourcesDirectory)\.azure-pipelines\guardian\SDL\.gdnsuppress
|
|
stages:
|
|
- stage: Stage
|
|
jobs:
|
|
- job: HostJob
|
|
steps:
|
|
- bash: |
|
|
if [[ ! "$CURRENT_BRANCH" =~ ^release-.* ]]; then
|
|
echo "Can only publish from a release branch."
|
|
echo "Unexpected branch name: $CURRENT_BRANCH"
|
|
exit 1
|
|
fi
|
|
env:
|
|
CURRENT_BRANCH: ${{ variables['Build.SourceBranchName'] }}
|
|
displayName: "Check the branch is a release branch"
|
|
|
|
- bash: |
|
|
echo "importing GPG key:"
|
|
# Pipeline variables do not preserve line ends so we use base64 instead of --armored as a workaround.
|
|
echo $GPG_PRIVATE_KEY_BASE64 | base64 -d | gpg --batch --import
|
|
echo "list keys after import:"
|
|
gpg --list-keys
|
|
env:
|
|
GPG_PRIVATE_KEY_BASE64: $(GPG_PRIVATE_KEY_BASE64) # secret variable has to be mapped to an env variable
|
|
displayName: "Import gpg key"
|
|
|
|
- bash: ./scripts/download_driver_for_all_platforms.sh
|
|
displayName: 'Download driver'
|
|
|
|
- bash: mvn -B deploy -D skipTests --no-transfer-progress --activate-profiles release -D gpg.passphrase=$GPG_PASSPHRASE -DaltDeploymentRepository=snapshot-repo::default::file:$(pwd)/local-build
|
|
displayName: 'Build and deploy to a local directory'
|
|
env:
|
|
GPG_PASSPHRASE: $(GPG_PASSPHRASE) # secret variable has to be mapped to an env variable
|
|
|
|
- bash: |
|
|
for file in $(find snapshots -type f); do
|
|
echo "processing: $file"
|
|
if [[ $file =~ \.(md5|sha1|sha256)$ ]]; then
|
|
continue
|
|
fi
|
|
sha256sum "$file" | cut -f1 -d \ > "$file.sha256"
|
|
done
|
|
displayName: 'Create .sha256 files'
|
|
|
|
- task: EsrpRelease@4
|
|
inputs:
|
|
ConnectedServiceName: 'Playwright-ESRP'
|
|
Intent: 'PackageDistribution'
|
|
ContentType: 'Maven'
|
|
ContentSource: 'Folder'
|
|
FolderLocation: './local-build'
|
|
WaitForReleaseCompletion: true
|
|
Owners: 'yurys@microsoft.com'
|
|
Approvers: 'maxschmitt@microsoft.com'
|
|
ServiceEndpointUrl: 'https://api.esrp.microsoft.com'
|
|
MainPublisher: 'Playwright'
|
|
DomainTenantId: '72f988bf-86f1-41af-91ab-2d7cd011db47'
|
|
displayName: 'ESRP Release to Maven'
|