removed azure-pipelines folder, updated docs, fixed build-boost-packages.yml
This commit is contained in:
13
.github/workflows/build-boost-packages.yml
vendored
13
.github/workflows/build-boost-packages.yml
vendored
@@ -37,11 +37,11 @@ jobs:
|
||||
platform: linux-18.04
|
||||
- os: windows-2016
|
||||
architecture: x86_64
|
||||
toolset: msvc14.1
|
||||
toolset: msvc-14.1
|
||||
platform: win32
|
||||
- os: windows-2019
|
||||
architecture: x86_64
|
||||
toolset: msvc14.2
|
||||
toolset: msvc-14.2
|
||||
platform: win32
|
||||
|
||||
steps:
|
||||
@@ -63,7 +63,7 @@ jobs:
|
||||
path: ${{ runner.temp }}/artifact
|
||||
|
||||
test_boost:
|
||||
name: Test Boost ${{ github.event.inputs.VERSION }} [${{ matrix.platform }}]
|
||||
name: Test Boost ${{ github.event.inputs.VERSION }} [${{ matrix.os }}]
|
||||
needs: build_boost
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
@@ -83,11 +83,11 @@ jobs:
|
||||
architecture: x64
|
||||
- os: windows-2016
|
||||
platform: win32
|
||||
toolset: msvc14.1
|
||||
toolset: msvc-14.1
|
||||
architecture: x86_64
|
||||
- os: windows-2019
|
||||
platform: win32
|
||||
toolset: msvc14.2
|
||||
toolset: msvc-14.2
|
||||
architecture: x86_64
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
@@ -104,7 +104,7 @@ jobs:
|
||||
|
||||
- name: Extract files
|
||||
run: |
|
||||
$artifactName = "${{ env.ARTIFACT_NAME }}.tar.gz"
|
||||
$artifactName = Get-ChildItem -Name
|
||||
If ("${{ matrix.platform }}" -eq "win32") {
|
||||
$assetTarPath = $artifactName.TrimEnd(".tar.gz")
|
||||
7z x $artifactName -o"$assetTarPath" -y | Out-Null
|
||||
@@ -173,6 +173,7 @@ jobs:
|
||||
data: fs.readFileSync(`./${artifactDir}/${artifactName}`)
|
||||
});
|
||||
}
|
||||
|
||||
trigger_pr:
|
||||
name: Trigger "Create Pull Request" workflow
|
||||
needs: publish_release
|
||||
|
||||
@@ -29,22 +29,20 @@ Here are a few things you can do that will increase the likelihood of your pull
|
||||
### Directory structure
|
||||
```
|
||||
|
||||
├── azure-pipelines/
|
||||
| └──templates/
|
||||
├── .github/
|
||||
| └──workflows/
|
||||
├── builders/
|
||||
├── helpers/
|
||||
├── installers/
|
||||
└── tests/
|
||||
└──sources/
|
||||
```
|
||||
- `azure-pipelines*` - contains global YAML definitions for build pipelines. Reusable templates for specific jobs are located in `templates` subfolder.
|
||||
- `.github/workflows` - contains repository workflow files.
|
||||
- `builders` - contains Boost builder classes and functions.
|
||||
- `helpers` - contains global helper functions and functions.
|
||||
- `helpers` - contains global helper classes and functions.
|
||||
- `installers` - contains installation script templates.
|
||||
- `tests` - contains test scripts. Required tests sources are located in `sources` subfolder.
|
||||
|
||||
\* _We use Azure Pipelines because there are a few features that Actions is still missing, we'll move to Actions as soon as possible_.
|
||||
|
||||
## Resources
|
||||
|
||||
- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)
|
||||
|
||||
@@ -1,95 +0,0 @@
|
||||
name: $(date:yyyyMMdd)$(rev:.r)-Boost-$(VERSION)
|
||||
trigger: none
|
||||
pr:
|
||||
autoCancel: true
|
||||
branches:
|
||||
include:
|
||||
- main
|
||||
paths:
|
||||
exclude:
|
||||
- versions-manifest.json
|
||||
|
||||
stages:
|
||||
- stage: Build_Boost_Ubuntu_1604
|
||||
dependsOn: []
|
||||
variables:
|
||||
VmImage: ubuntu-16.04
|
||||
Platform: linux-16.04
|
||||
Architecture: x64
|
||||
Toolset: gcc
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/build-job.yml
|
||||
|
||||
- stage: Test_Boost_Ubuntu_1604
|
||||
condition: succeeded()
|
||||
dependsOn: Build_Boost_Ubuntu_1604
|
||||
variables:
|
||||
VmImage: ubuntu-16.04
|
||||
Platform: linux-16.04
|
||||
Architecture: x64
|
||||
Toolset: gcc
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/test-job.yml
|
||||
|
||||
- stage: Build_Boost_Ubuntu_1804
|
||||
dependsOn: []
|
||||
variables:
|
||||
VmImage: 'ubuntu-18.04'
|
||||
Platform: linux-18.04
|
||||
Architecture: x64
|
||||
Toolset: gcc
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/build-job.yml
|
||||
|
||||
- stage: Test_Boost_Ubuntu_1804
|
||||
condition: succeeded()
|
||||
dependsOn: Build_Boost_Ubuntu_1804
|
||||
variables:
|
||||
VmImage: 'ubuntu-18.04'
|
||||
Platform: linux-18.04
|
||||
Architecture: x64
|
||||
Toolset: gcc
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/test-job.yml
|
||||
|
||||
- stage: Build_Boost_msvc141
|
||||
dependsOn: []
|
||||
variables:
|
||||
VmImage: 'vs2017-win2016'
|
||||
Platform: win32
|
||||
Architecture: x86_64
|
||||
Toolset: msvc-14.1
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/build-job.yml
|
||||
|
||||
- stage: Test_Boost_msvc141
|
||||
condition: succeeded()
|
||||
dependsOn: Build_Boost_msvc141
|
||||
variables:
|
||||
VmImage: 'vs2017-win2016'
|
||||
Platform: win32
|
||||
Architecture: x86_64
|
||||
Toolset: msvc-14.1
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/test-job.yml
|
||||
|
||||
- stage: Build_Boost_msvc142
|
||||
dependsOn: []
|
||||
variables:
|
||||
VmImage: 'windows-2019'
|
||||
Platform: win32
|
||||
Architecture: x86_64
|
||||
Toolset: msvc-14.2
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/build-job.yml
|
||||
|
||||
- stage: Test_Boost_msvc142
|
||||
condition: succeeded()
|
||||
dependsOn: Build_Boost_msvc142
|
||||
variables:
|
||||
VmImage: 'windows-2019'
|
||||
Platform: win32
|
||||
Architecture: x86_64
|
||||
Toolset: msvc-14.2
|
||||
jobs:
|
||||
- template: /azure-pipelines/templates/test-job.yml
|
||||
@@ -1,20 +0,0 @@
|
||||
jobs:
|
||||
- job: Build_Boost
|
||||
timeoutInMinutes: 300
|
||||
pool:
|
||||
name: Azure Pipelines
|
||||
vmImage: $(VmImage)
|
||||
steps:
|
||||
- checkout: self
|
||||
- task: PowerShell@2
|
||||
displayName: 'Build Boost $(Version)'
|
||||
inputs:
|
||||
targetType: filePath
|
||||
filePath: './builders/build-boost.ps1'
|
||||
arguments: '-Version $(Version) -Platform $(Platform) -Architecture $(Architecture) -Toolset $(Toolset)'
|
||||
|
||||
- task: PublishPipelineArtifact@1
|
||||
displayName: 'Publish Artifact: Boost $(Version)'
|
||||
inputs:
|
||||
targetPath: '$(Build.ArtifactStagingDirectory)'
|
||||
artifactName: 'boost-$(Version)-$(Platform)-$(Toolset)-$(Architecture)'
|
||||
@@ -1,80 +0,0 @@
|
||||
jobs:
|
||||
- job: Test_Boost
|
||||
pool:
|
||||
name: Azure Pipelines
|
||||
vmImage: $(VmImage)
|
||||
steps:
|
||||
- checkout: self
|
||||
submodules: true
|
||||
- task: PowerShell@2
|
||||
displayName: Fully cleanup the toolcache directory before testing
|
||||
inputs:
|
||||
targetType: filePath
|
||||
filePath: helpers/clean-toolcache.ps1
|
||||
arguments: -ToolName "boost"
|
||||
|
||||
- task: DownloadPipelineArtifact@2
|
||||
inputs:
|
||||
source: 'current'
|
||||
artifact: 'boost-$(Version)-$(Platform)-$(Toolset)-$(Architecture)'
|
||||
path: $(Build.ArtifactStagingDirectory)
|
||||
|
||||
- task: ExtractFiles@1
|
||||
inputs:
|
||||
archiveFilePatterns: '$(Build.ArtifactStagingDirectory)/boost-$(Version)-$(Platform)-*-$(Architecture).*'
|
||||
destinationFolder: $(Build.BinariesDirectory)
|
||||
cleanDestinationFolder: false
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'Apply build artifact to the local machines'
|
||||
inputs:
|
||||
targetType: inline
|
||||
script: |
|
||||
if ("$(Platform)" -match 'win32') { powershell ./setup.ps1 } else { sh ./setup.sh }
|
||||
workingDirectory: '$(Build.BinariesDirectory)'
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'Set up BOOST_ROOT'
|
||||
inputs:
|
||||
TargetType: inline
|
||||
script: |
|
||||
$BoostToolcachePath = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath "boost"
|
||||
$BoostToolcacheVersionPath = Join-Path -Path $BoostToolcachePath -ChildPath "$(Version)"
|
||||
$boostDirectory = Join-Path $BoostToolcacheVersionPath "$(Architecture)"
|
||||
$LD_LIBRARY = Join-Path -Path $boostDirectory -ChildPath "lib"
|
||||
Write-Host "BOOST_ROOT = ${boostDirectory}"
|
||||
Write-Host "##vso[task.setvariable variable=BOOST_ROOT]${boostDirectory}"
|
||||
Write-Host "##vso[task.setvariable variable=LD_LIBRARY_PATH]${LD_LIBRARY}"
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'Run tests'
|
||||
inputs:
|
||||
TargetType: inline
|
||||
script: |
|
||||
Install-Module Pester -Force -Scope CurrentUser -RequiredVersion 4.10.1
|
||||
Import-Module Pester
|
||||
$Platform = If ("$(Platform)" -eq "win32") { "Windows" } else { "Nix" }
|
||||
$pesterParams = @(
|
||||
@{
|
||||
Path="./Common.Tests.ps1";
|
||||
},
|
||||
@{
|
||||
Path="./${Platform}.Tests.ps1";
|
||||
Parameters=@{
|
||||
Version="$(Version)";
|
||||
Platform="$(Platform)"
|
||||
}
|
||||
}
|
||||
)
|
||||
Invoke-Pester -Script $pesterParams -OutputFile "$(Build.SourcesDirectory)/tests/test_results.xml" -OutputFormat NUnitXml
|
||||
workingDirectory: '$(Build.SourcesDirectory)/tests'
|
||||
|
||||
- task: PublishTestResults@2
|
||||
displayName: 'Publish test results'
|
||||
inputs:
|
||||
testResultsFiles: '*.xml'
|
||||
testResultsFormat: NUnit
|
||||
searchFolder: 'tests'
|
||||
failTaskOnFailedTests: true
|
||||
testRunTitle: "Boost $(Version)-$(Platform)-$(Toolset)"
|
||||
condition: always()
|
||||
Reference in New Issue
Block a user