4c5ce5a1a9
* module compat for py3.8+ controller * replaced internal usages of selinux bindings with internal ctypes binding (allows basic selinux operations from any Python interpreter), plus tests * added new respawn_module API to allow modules to import Python packages that are only available under a well-known interpreter, plus tests * added respawn logic to modules that need Python libs from a specific system interpreter (apt, apt_repository, dnf, yum) minimize internal HAVE_SELINUX usage spurious junk pep8 * pylint fixes * add RHEL8 Python 3.8 testing * more pylint * import sanity * unit tests * changelog update * fix a bunch of stuff * tweak changelog * fix setup_rpm_repo on EL8 * misc sanity/test fixes * misc feedback tweaks * fix import fallback in test module * fix selinux MU test * fix dnf tests to avoid python-dependent test packages * add trailing LFs to aliases * fix yum tests to avoid test package with Python deps * hack create_repo for EL6 to create noarch package
45 lines
2 KiB
YAML
45 lines
2 KiB
YAML
# This template uses the provided list of jobs to create test one or more test jobs.
|
|
# It can be used directly if needed, or through the matrix template.
|
|
|
|
parameters:
|
|
# A required list of dictionaries, one per test job.
|
|
# Each item in the list must contain a "job" and "name" key.
|
|
- name: jobs
|
|
type: object
|
|
|
|
jobs:
|
|
- ${{ each job in parameters.jobs }}:
|
|
- job: test_${{ replace(replace(replace(replace(job.test, '/', '_'), '.', '_'), '-', '_'), '@', '_') }}
|
|
displayName: ${{ job.name }}
|
|
container: default
|
|
workspace:
|
|
clean: all
|
|
steps:
|
|
- checkout: self
|
|
fetchDepth: $(fetchDepth)
|
|
path: $(checkoutPath)
|
|
- bash: .azure-pipelines/scripts/run-tests.sh "$(entryPoint)" "${{ job.test }}" "$(coverageBranches)"
|
|
displayName: Run Tests
|
|
- bash: .azure-pipelines/scripts/process-results.sh
|
|
condition: succeededOrFailed()
|
|
displayName: Process Results
|
|
- bash: .azure-pipelines/scripts/aggregate-coverage.sh "$(Agent.TempDirectory)"
|
|
condition: eq(variables.haveCoverageData, 'true')
|
|
displayName: Aggregate Coverage Data
|
|
- task: PublishTestResults@2
|
|
condition: eq(variables.haveTestResults, 'true')
|
|
inputs:
|
|
testResultsFiles: "$(outputPath)/junit/*.xml"
|
|
displayName: Publish Test Results
|
|
- task: PublishPipelineArtifact@1
|
|
condition: eq(variables.haveBotResults, 'true')
|
|
displayName: Publish Bot Results
|
|
inputs:
|
|
targetPath: "$(outputPath)/bot/"
|
|
artifactName: "Bot $(System.JobAttempt) $(System.StageDisplayName) $(System.JobDisplayName)"
|
|
- task: PublishPipelineArtifact@1
|
|
condition: eq(variables.haveCoverageData, 'true')
|
|
displayName: Publish Coverage Data
|
|
inputs:
|
|
targetPath: "$(Agent.TempDirectory)/coverage/"
|
|
artifactName: "Coverage $(System.JobAttempt) $(System.StageDisplayName) $(System.JobDisplayName)"
|