Skip to content

Issue #305: add check if slack panel is visible to prevent unnecessar… #621

Issue #305: add check if slack panel is visible to prevent unnecessar…

Issue #305: add check if slack panel is visible to prevent unnecessar… #621

Workflow file for this run

name: All Unit and Integration Tests
on:
push:
pull_request:
types: [assigned, opened, synchronize, reopened, edited]
workflow_dispatch:
inputs:
ref:
description: Branch/tag/hash to use (defaults to master)
required: false
default: master
jobs:
description: Jobs to run (comma-separated, defaults to all)
required: false
jobs:
log-params:
name: Log Params
runs-on: ubuntu-20.04
if: "!contains(github.event.head_commit.message, '[skip ci]')"
steps:
- run: echo "Github event inputs [${{ toJson(github.event.inputs) }}]."
- run: echo "Head commit message [${{ github.event.head_commit.message }}]."
# check path to bundled Maven executable; it should be then used in ATLAS_MVN
- run: mvn -version
unit-tests:
name: Unit Tests
runs-on: ubuntu-20.04
# around 800 Mb of dependencies need to be loaded; it may take long first time until it's cached
timeout-minutes: 30
if: "(github.event.inputs.jobs == '' || contains(github.event.inputs.jobs, 'unit-tests')) && !contains(github.event.head_commit.message, '[skip ci]')"
strategy:
matrix:
java-version: [8, 11]
fail-fast: false
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.ref }}
- uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java-version }}
distribution: adopt
- run: bin/build/install-plugin-sdk.sh
- uses: actions/cache@v3
with:
path: ~/.m2/repository
key: maven-unit
- run: bin/build/override-plugin-sdk-maven.sh
- run: bin/build/run-unit-tests.sh
- uses: actions/upload-artifact@v3
with:
name: unit-tests-coverage-java-${{ matrix.java-version }}
path: '**/target/site/jacoco/**'
integration-tests-jira:
name: Jira
runs-on: ubuntu-20.04
timeout-minutes: 30
if: github.event.inputs.jobs == '' || contains(github.event.inputs.jobs, 'integration-tests-jira')
needs: unit-tests
strategy:
matrix:
java-version: [8, 11, 17]
jira-version: [8.15.0, 9.5.0]
# Java 17 support is added only since Jira 9.5: https://confluence.atlassian.com/jiracore/preparing-for-jira-9-5-1167834011.html
exclude:
- java-version: 17
jira-version: 8.15.0
fail-fast: false
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.ref }}
- uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java-version }}
distribution: adopt
- run: bin/build/install-plugin-sdk.sh
- run: bin/build/override-plugin-sdk-maven.sh
- run: bin/build/install-int-test-libs.sh
- uses: actions/cache@v3
with:
path: ~/.m2/repository
key: maven-unit
- uses: actions/cache@v3
with:
path: ~/.m2/repository/com/atlassian/jira
key: maven-integration-jira-${{ matrix.jira-version }}
- run: bin/build/install-common-modules.sh
- run: VERSION=${{ matrix.jira-version }} bin/build/run-jira-its.sh
- uses: actions/upload-artifact@v3
if: failure()
with:
name: webdriver-screenshots-jira-${{ matrix.jira-version }}
path: jira-slack-server-integration/jira-slack-server-integration-plugin/target/webdriverTests/**
integration-tests-confluence:
name: Confluence
runs-on: ubuntu-20.04
timeout-minutes: 30
if: github.event.inputs.jobs == '' || contains(github.event.inputs.jobs, 'integration-tests-confluence')
needs: unit-tests
strategy:
matrix:
# every version part should be 0 <= <version> <= 255; otherwise Confluence fails to start
java-version: [8, 11, 17]
confluence-version: [7.10.0, 8.0.0]
exclude:
- java-version: 8
confluence-version: 8.0.0 # Confluence 8 doesn't support Java 8 anymore
- java-version: 17
confluence-version: 7.10.0
fail-fast: false
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.ref }}
- uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java-version }}
distribution: adopt
- run: bin/build/install-plugin-sdk.sh
- run: bin/build/override-plugin-sdk-maven.sh
- run: bin/build/install-int-test-libs.sh
- uses: actions/cache@v3
with:
path: ~/.m2/repository
key: maven-unit
- uses: actions/cache@v3
with:
path: ~/.m2/repository/com/atlassian/confluence
key: maven-integration-confluence-${{ matrix.confluence-version }}
- run: bin/build/install-common-modules.sh
- run: VERSION=${{ matrix.confluence-version }} bin/build/run-confluence-its.sh
- uses: actions/upload-artifact@v3
if: failure()
with:
name: webdriver-screenshots-confluence-${{ matrix.confluence-version }}-java-${{ matrix.java-version }}
path: confluence-slack-server-integration-plugin/target/webdriverTests/**
integration-tests-bitbucket:
name: Bitbucket
runs-on: ubuntu-20.04
timeout-minutes: 30
if: github.event.inputs.jobs == '' || contains(github.event.inputs.jobs, 'integration-tests-bitbucket')
needs: unit-tests
strategy:
matrix:
java-version: [8, 11, 17]
bitbucket-version: [7.6.0, 8.8.0]
# Bitbucket 8.8.0 is the first one that supports Java 17
exclude:
- java-version: 17
bitbucket-version: 7.6.0
fail-fast: false
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.ref }}
# Dec 13, 2022
# latest Bitbucket 8.6.1 doesn't support latest git 2.38.1 installed on the Ubuntu 20 image Github provides
# install last supported git - 2.37.4; remove this trick once Bitbucket implements support for latest git
# https://confluence.atlassian.com/bitbucketserver/supported-platforms-776640981.html#Supportedplatforms-dvcsDVCS
- run: bin/build/install-supported-git.sh
- uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java-version }}
distribution: adopt
- run: bin/build/install-plugin-sdk.sh
- run: bin/build/override-plugin-sdk-maven.sh
- run: bin/build/install-int-test-libs.sh
- uses: actions/cache@v3
with:
path: ~/.m2/repository
key: maven-unit
- uses: actions/cache@v3
with:
path: ~/.m2/repository/com/atlassian/bitbucket
key: maven-integration-bitbucket-${{ matrix.bitbucket-version }}
- run: bin/build/install-common-modules.sh
- run: VERSION=${{ matrix.bitbucket-version }} bin/build/run-bitbucket-its.sh
- uses: actions/upload-artifact@v3
if: failure()
with:
name: webdriver-screenshots-bitbucket-${{ matrix.bitbucket-version }}-java-${{ matrix.java-version }}
path: bitbucket-slack-server-integration-plugin/target/webdriverTests/**