diff --git a/.forgejo/workflows/build-aarch64.yaml b/.forgejo/workflows/build-aarch64.yaml index 0364014..8e19c74 100644 --- a/.forgejo/workflows/build-aarch64.yaml +++ b/.forgejo/workflows/build-aarch64.yaml @@ -19,8 +19,7 @@ jobs: steps: - name: Environment setup run: | - doas apk add nodejs git patch curl net-tools - doas hostname host.docker.internal + doas apk add nodejs git patch curl cd /etc/apk/keys doas curl -JO https://forge.ilot.io/api/packages/ilot/alpine/key - name: Repo pull diff --git a/.forgejo/workflows/build-x86_64.yaml b/.forgejo/workflows/build-x86_64.yaml index c805199..9a7dac2 100644 --- a/.forgejo/workflows/build-x86_64.yaml +++ b/.forgejo/workflows/build-x86_64.yaml @@ -19,8 +19,7 @@ jobs: steps: - name: Environment setup run: | - doas apk add nodejs git patch curl net-tools - doas hostname host.docker.internal + doas apk add nodejs git patch curl cd /etc/apk/keys doas curl -JO https://forge.ilot.io/api/packages/ilot/alpine/key - name: Repo pull diff --git a/ilot/authentik/APKBUILD b/ilot/authentik/APKBUILD index 51e90e0..074ec7f 100644 --- a/ilot/authentik/APKBUILD +++ b/ilot/authentik/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Antoine Martin (ayakael) pkgname=authentik pkgver=2024.8.2 -pkgrel=1 +pkgrel=0 pkgdesc="An open-source Identity Provider focused on flexibility and versatility" url="https://github.com/goauthentik/authentik" # s390x: missing py3-celery py3-flower and py3-kombu @@ -153,21 +153,14 @@ depends=" py3-yarl py3-zope-interface py3-zxcvbn - valkey + redis uvicorn " makedepends="go npm" -checkdepends=" - py3-pip - py3-coverage - py3-pytest - py3-pytest-django - py3-pytest-randomly - py3-pytest-timeout - py3-freezegun - py3-boto3 - py3-requests-mock - " +# checkdepends scooped up by poetry due to number +checkdepends="poetry py3-coverage" +# tests disabled for now +options="!check" install="$pkgname.post-install $pkgname.post-upgrade $pkgname.pre-install" source=" $pkgname-$pkgver.tar.gz::https://github.com/goauthentik/authentik/archive/refs/tags/version/$pkgver.tar.gz @@ -181,7 +174,7 @@ source=" go-downgrade-1.22.patch " builddir="$srcdir/"authentik-version-$pkgver -subpackages="$pkgname-openrc $pkgname-doc $pkgname-pyc" +subpackages="$pkgname-openrc $pkgname-doc" pkgusers="authentik" pkggroups="authentik" @@ -211,126 +204,55 @@ build() { npm run build } -check() { - msg "Setting up test environments" - export POSTGRES_DB=authentik - export POSTGRES_USER=authentik - export POSTGRES_PASSWORD="EK-5jnKfjrGRm<77" - export AUTHENTIK_POSTGRESQL__TEST__NAME=authentik - - rm -Rf "$srcdir"/tmp - initdb -D "$srcdir"/tmp - postgres -D "$srcdir"/tmp --unix-socket-directories="$srcdir" > "$srcdir"/tmp/psql.log 2>&1 & - valkey-server > "$srcdir"/tmp/valkey.log 2>&1 & - trap "pkill valkey-server; pkill postgres" EXIT - sleep 5 - psql -h "$srcdir" -d postgres -c "CREATE ROLE $POSTGRES_USER PASSWORD '$POSTGRES_PASSWORD' INHERIT LOGIN;" - psql -h "$srcdir" -d postgres -c "CREATE DATABASE $POSTGRES_DB OWNER $POSTGRES_USER ENCODING 'UTF-8';" - psql -h "$srcdir" -d postgres -c "CREATE DATABASE test_$POSTGRES_DB OWNER $POSTGRES_USER ENCODING 'UTF-8';" - - # .github/actions/setup/action.yml: Generate config + csrf - python3 -c " -from authentik.lib.generators import generate_id -from yaml import safe_dump - -with open(\"local.env.yml\", \"w\") as _config: - safe_dump( - { - \"log_level\": \"debug\", - \"secret_key\": generate_id(), - \"csrf\": { \"trusted_origins\": ['https://*']}, - }, - _config, - default_flow_style=False, - ) -" - python -m lifecycle.migrate - - # no selenium package - pip install selenium drf_jsonschema_serializer pdoc --break-system-packages - - msg "Starting tests" - make test - - # TODO: Fix go-tests - # make go-test - - pkill valkey-server - pkill postgres -} - package() { msg "Packaging $pkgname" - local prefix="/usr/share/webapps" - local destdir="$pkgdir"$prefix/authentik + mkdir -p "$pkgdir"/usr/share/webapps/authentik/web + mkdir -p "$pkgdir"/usr/share/webapps/authentik/website + mkdir -p "$pkgdir"/var/lib/authentik + mkdir -p "$pkgdir"/usr/share/doc + mkdir -p "$pkgdir"/usr/bin + cp -dr "$builddir"/authentik "$pkgdir"/usr/share/webapps/authentik + cp -dr "$builddir"/web/dist "$pkgdir"/usr/share/webapps/authentik/web/dist + cp -dr "$builddir"/web/authentik "$pkgdir"/usr/share/webapps/authentik/web/authentik + cp -dr "$builddir"/website/build "$pkgdir"/usr/share/doc/authentik + cp -dr "$builddir"/tests "$pkgdir"/usr/share/webapps/authentik/tests + cp -dr "$builddir"/lifecycle "$pkgdir"/usr/share/webapps/authentik/lifecycle + cp -dr "$builddir"/locale "$pkgdir"/usr/share/webapps/authentik/locale + cp -dr "$builddir"/blueprints "$pkgdir"/var/lib/authentik/blueprints + install -Dm755 "$builddir"/manage.py "$pkgdir"/usr/share/webapps/authentik/manage.py + install -Dm755 "$builddir"/server "$pkgdir"/usr/share/webapps/authentik/server + ln -s "/etc/authentik/config.yml" "$pkgdir"/usr/share/webapps/authentik/local.env.yml - # authentik install - install -d -m755 \ - "$destdir" \ - "$destdir"/web \ - "$pkgdir"/usr/bin \ - "$pkgdir"/usr/share/doc \ - "$pkgdir"/var/lib/authentik + install -Dm755 "$builddir"/proxy "$pkgdir"/usr/bin/authentik-proxy + install -Dm755 "$builddir"/ldap "$pkgdir"/usr/bin/authentik-ldap + install -Dm755 "$builddir"/radius "$pkgdir"/usr/bin/authentik-radius - cp -rl authentik lifecycle locale tests \ - "$destdir"/ - - cp -rl blueprints \ - "$pkgdir"/var/lib/authentik/ - - cp -rl web/dist web/authentik \ - "$destdir"/web/ - - install -m755 -t "$destdir" \ - "$builddir"/server \ - "$builddir"/ldap \ - "$builddir"/radius \ - "$builddir"/proxy \ - "$builddir"/manage.py - - cp -rl website/build/ "$pkgdir"/usr/share/doc/authentik/ - - # symbolic bin links to usr/bin - for i in server proxy ldap radius; do - ln -s $prefix/authentik/$i "$pkgdir"/usr/bin/authentik-$i - done - - # openrc install - for i in $pkgname $pkgname-worker $pkgname-ldap; do - install -Dm755 "$srcdir"/$i.openrc "$pkgdir"/etc/init.d/$i - done - - # config file setup + install -Dm755 "$srcdir"/$pkgname.openrc \ + "$pkgdir"/etc/init.d/$pkgname + install -Dm755 "$srcdir"/$pkgname-worker.openrc \ + "$pkgdir"/etc/init.d/$pkgname-worker + install -Dm755 "$srcdir"/$pkgname-ldap.openrc \ + "$pkgdir"/etc/init.d/$pkgname-ldap + install -Dm640 "$srcdir"/$pkgname-ldap.conf \ + "$pkgdir"/etc/conf.d/$pkgname-ldap install -Dm640 "$builddir"/authentik/lib/default.yml \ "$pkgdir"/etc/authentik/config.yml - ln -s "/etc/authentik/config.yml" "$pkgdir"/usr/share/webapps/authentik/local.env.yml chown root:www-data "$pkgdir"/etc/authentik/config.yml + mv "$pkgdir"/usr/share/webapps/authentik/web/dist/custom.css "$pkgdir"/etc/authentik/custom.css + ln -s "/etc/authentik/custom.css" "$pkgdir"/usr/share/webapps/authentik/web/dist/custom.css + chown root:www-data "$pkgdir"/etc/authentik/custom.css + sed -i 's|cert_discovery_dir.*|cert_discovery_dir: /var/lib/authentik/certs|' "$pkgdir"/etc/authentik/config.yml sed -i 's|blueprints_dir.*|blueprints_dir: /var/lib/authentik/blueprints|' "$pkgdir"/etc/authentik/config.yml sed -i 's|template_dir.*|template_dir: /var/lib/authentik/templates|' "$pkgdir"/etc/authentik/config.yml printf "\ncsrf:\n trusted_origins: ['auth.example.com']" >> "$pkgdir"/etc/authentik/config.yml printf "\nsecret_key: '@@SECRET_KEY@@'" >> "$pkgdir"/etc/authentik/config.yml - # custom css location change - mv "$pkgdir"/usr/share/webapps/authentik/web/dist/custom.css "$pkgdir"/etc/authentik/custom.css - ln -s "/etc/authentik/custom.css" "$pkgdir"/usr/share/webapps/authentik/web/dist/custom.css - chown root:www-data "$pkgdir"/etc/authentik/custom.css - # Install wrapper script to /usr/bin. install -m755 -D "$srcdir"/authentik-manage.sh "$pkgdir"/usr/bin/authentik-manage } -pyc() { - default_pyc - - cd "$pkgdir" - # shellcheck disable=SC3003 - local IFS=$'\n' - # shellcheck disable=SC2046 - amove $(find usr/share/webapps/authentik -type d -name __pycache__) -} - sha512sums=" 02e54183fa35e7a06780f68239db7b3b5e2ccd3c6e1fcaf97690d9b596077c7a5345dbb5b005f39ff67a0dae83bd9b71d1c6d18ba8fae9cc7174d5d856360bff authentik-2024.8.2.tar.gz 4defb4fe3a4230f4aa517fbecd5e5b8bcef2a64e1b40615660ae9eec33597310a09df5e126f4d39ce7764bd1716c0a7040637699135c103cbc1879593c6c06f1 authentik.openrc diff --git a/ilot/py3-sentry-sdk/APKBUILD b/ilot/py3-sentry-sdk/APKBUILD deleted file mode 100644 index 3162a03..0000000 --- a/ilot/py3-sentry-sdk/APKBUILD +++ /dev/null @@ -1,60 +0,0 @@ -# Contributor: Francesco Colista -# Maintainer: Francesco Colista -pkgname=py3-sentry-sdk -pkgver=2.14.0 -pkgrel=0 -pkgdesc="The new Python SDK for Sentry.io" -url="https://sentry.io/for/python/" -arch="noarch" -license="BSD-2-Clause" -depends=" - py3-certifi - py3-urllib3 - " -makedepends=" - py3-gpep517 - py3-setuptools - py3-wheel - " -checkdepends=" - py3-executing - py3-jsonschema - py3-pytest-asyncio - py3-pytest-forked - py3-pytest-localserver - py3-pytest-xdist - py3-responses - py3-werkzeug - " -subpackages="$pkgname-pyc" -source="$pkgname-$pkgver.tar.gz::https://github.com/getsentry/sentry-python/archive/$pkgver.tar.gz" -builddir="$srcdir"/sentry-python-$pkgver -options="!check" # a bunch of deprecation-warning failures and improper shutdown.. seems to need net - -build() { - gpep517 build-wheel \ - --wheel-dir .dist \ - --output-fd 3 3>&1 >&2 -} - -check() { - python3 -m venv --clear --without-pip --system-site-packages .testenv - .testenv/bin/python3 -m installer .dist/*.whl - # gcp: pip install - # test_socket/test_requests: needs net - # wsgi: weird list errors - .testenv/bin/python3 -m pytest -n auto -p no:warnings \ - --deselect tests/integrations/gcp/test_gcp.py \ - --deselect tests/integrations/socket/test_socket.py \ - --deselect tests/integrations/requests/test_requests.py \ - --deselect tests/integrations/wsgi/test_wsgi.py -} - -package() { - python3 -m installer -d "$pkgdir" \ - .dist/*.whl -} - -sha512sums=" -8667c3496cdbd6b3055f8046abcf3faa8afbda04e0551787222d44c7736deea95722251c266c21730a73afd57d4b7447ec17408672c3217af35103bba6f4b513 py3-sentry-sdk-2.14.0.tar.gz -"