diff --git a/.github/actions/conditional/action.yml b/.github/actions/conditional/action.yml index 717d67769c7..18869cfe54b 100644 --- a/.github/actions/conditional/action.yml +++ b/.github/actions/conditional/action.yml @@ -23,6 +23,9 @@ outputs: documentation: description: Should "documentation.yml" execute value: ${{ steps.changes.outputs.documentation }} + sssd: + description: Should "sssd.yml" execute + value: ${{ steps.changes.outputs.sssd }} runs: using: composite diff --git a/.github/actions/conditional/conditions b/.github/actions/conditional/conditions index 7da66f4c7b5..2fa81af4449 100644 --- a/.github/actions/conditional/conditions +++ b/.github/actions/conditional/conditions @@ -2,9 +2,9 @@ # # To test a pattern run '.github/actions/conditional/conditional.sh ' -.github/actions/ ci operator js codeql-java codeql-themes guides documentation +.github/actions/ ci operator js codeql-java codeql-themes guides documentation sssd -.github/workflows/ci.yml ci +.github/workflows/ci.yml ci sssd .github/workflows/operator-ci.yml operator .github/workflows/js-ci.yml js .github/workflows/codeql-analysis.yml codeql-java codeql-themes @@ -14,6 +14,7 @@ */src/main/ ci operator */src/test/ ci operator pom.xml ci operator +federation/sssd/ ci sssd docs/guides/ guides docs/documentation/ documentation diff --git a/.github/scripts/run-ipa-tests.sh b/.github/scripts/run-ipa-tests.sh new file mode 100755 index 00000000000..f9941d0c9a9 --- /dev/null +++ b/.github/scripts/run-ipa-tests.sh @@ -0,0 +1,64 @@ +#!/bin/bash + +set -o pipefail + +echo "Modifying /etc/sssd/sssd.conf file" +if ! grep -q ^ldap_user_extra_attrs /etc/sssd/sssd.conf; then + sed -i '/ldap_tls_cacert/a ldap_user_extra_attrs = mail:mail, sn:sn, givenname:givenname, telephoneNumber:telephoneNumber' /etc/sssd/sssd.conf +fi +if ! grep -q ^user_attributes /etc/sssd/sssd.conf; then + sed -i '/allowed_uids/a user_attributes = +mail, +telephoneNumber, +givenname, +sn' /etc/sssd/sssd.conf +fi + +systemctl restart sssd +sss_cache -E + +echo "Creating /etc/pam.d/keycloak file for PAM" +cat >/etc/pam.d/keycloak <> $GITHUB_OUTPUT + + - id: cache-maven-repository + if: ${{ needs.conditional.outputs.sssd == 'true' }} + name: ipa-data cache + uses: actions/cache@v3 + with: + path: ~/ipa-data.tar + key: ${{ steps.weekly-cache-key.outputs.key }} + + - name: Run tests + if: ${{ needs.conditional.outputs.sssd == 'true' }} + run: .github/scripts/run-ipa.sh "${{ github.workspace }}" check-set-status: name: Set check conclusion @@ -474,6 +509,7 @@ jobs: - fips-integration-tests - account-console-integration-tests - webauthn-integration-tests + - sssd-unit-tests runs-on: ubuntu-latest outputs: conclusion: ${{ steps.check.outputs.conclusion }}