From dbf265e0a824c1204e6af96be6e9c02af3b48b9f Mon Sep 17 00:00:00 2001 From: Robert Kaussow Date: Sat, 15 May 2021 15:01:36 +0200 Subject: [PATCH] chore: upstream project was renamed to vaultwarden (#29) Co-authored-by: Robert Kaussow Reviewed-on: https://gitea.rknet.org/docker/vaultwarden-ldap/pulls/29 Co-authored-by: Robert Kaussow Co-committed-by: Robert Kaussow --- .chglog/config.yml | 2 +- .drone.yml | 6 +-- Dockerfile | 10 ++--- Makefile | 6 +-- README.md | 52 +++++++++++++------------- docker-compose.yml | 32 ++++++++-------- overlay/etc/templates/config.toml.tmpl | 38 +++++++++---------- overlay/usr/local/bin/entrypoint | 28 +++++++------- renovate.json | 2 +- 9 files changed, 88 insertions(+), 88 deletions(-) diff --git a/.chglog/config.yml b/.chglog/config.yml index e3eda13..ecb95a7 100755 --- a/.chglog/config.yml +++ b/.chglog/config.yml @@ -2,7 +2,7 @@ style: github template: CHANGELOG.tpl.md info: title: CHANGELOG - repository_url: https://gitea.rknet.org/docker/bitwardenrs_ldap + repository_url: https://gitea.rknet.org/docker/vaultwarden-ldap options: commit_groups: title_maps: diff --git a/.drone.yml b/.drone.yml index 0d7ccd6..789b091 100644 --- a/.drone.yml +++ b/.drone.yml @@ -28,7 +28,7 @@ platform: steps: - name: binary - image: clux/muslrust:nightly-2020-10-02 + image: clux/muslrust:nightly-2021-04-14 commands: - make build environment: @@ -156,7 +156,7 @@ steps: DOCKER_USER: from_secret: docker_username PUSHRM_FILE: README.md - PUSHRM_SHORT: Custom image for the BitwardenRS LDAP connector + PUSHRM_SHORT: Custom image for the Vaultwarden LDAP connector PUSHRM_TARGET: thegeeklab/${DRONE_REPO_NAME} when: status: @@ -204,6 +204,6 @@ depends_on: --- kind: signature -hmac: 39fce31c14c4f9ced76b2f99bcedc671c02050c983afdd9ef8bbd0f12a0b6122 +hmac: b03e655c89137813302453a422df07b0d905cbd6cdfe9d0719cf45e167f7ea75 ... diff --git a/Dockerfile b/Dockerfile index 26d6d50..21e0d84 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,10 +2,10 @@ FROM thegeeklab/alpine:latest@sha256:3de659c1a479d9d80e9c3924227981450af3a068087 LABEL maintainer="Robert Kaussow " LABEL org.opencontainers.image.authors="Robert Kaussow " -LABEL org.opencontainers.image.title="bitwardenrs_ldap" -LABEL org.opencontainers.image.url="https://gitea.rknet.org/docker/bitwardenrs_ldap" -LABEL org.opencontainers.image.source="https://gitea.rknet.org/docker/bitwardenrs_ldap" -LABEL org.opencontainers.image.documentation="https://gitea.rknet.org/docker/bitwardenrs_ldap" +LABEL org.opencontainers.image.title="vaultwarden-ldap" +LABEL org.opencontainers.image.url="https://gitea.rknet.org/docker/vaultwarden-ldap" +LABEL org.opencontainers.image.source="https://gitea.rknet.org/docker/vaultwarden-ldap" +LABEL org.opencontainers.image.documentation="https://gitea.rknet.org/docker/vaultwarden-ldap" ADD overlay/ / @@ -15,7 +15,7 @@ RUN apk --update add ca-certificates && \ rm -rf /tmp/* && \ chown -R app:app /app -ADD src/target/x86_64-unknown-linux-musl/release/bitwarden_rs_ldap /app +ADD src/target/x86_64-unknown-linux-musl/release/vaultwarden_ldap /app VOLUME /app/data diff --git a/Makefile b/Makefile index c846020..104ed38 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ -# renovate: datasource=github-releases depName=ViViDboarder/bitwarden_rs_ldap -export BUILD_VERSION ?= v0.3.0 +# renovate: datasource=github-releases depName=ViViDboarder/vaultwarden_ldap +export BUILD_VERSION ?= v0.4.0 export DEBIAN_FRONTEND ?= noninteractive export LANG ?= C.UTF-8 export TZ ?= UTC @@ -14,7 +14,7 @@ build: build-src build-bin .PHONY: build-src build-src: mkdir -p $(SRC); \ - curl -sSL "https://github.com/ViViDboarder/bitwarden_rs_ldap/archive/$${BUILD_VERSION}.tar.gz" | tar xz -C $(SRC) --strip-components=1 + curl -sSL "https://github.com/ViViDboarder/vaultwarden_ldap/archive/$${BUILD_VERSION}.tar.gz" | tar xz -C $(SRC) --strip-components=1 .PHONY: build-bin build-bin: diff --git a/README.md b/README.md index 614ca40..add53eb 100644 --- a/README.md +++ b/README.md @@ -1,42 +1,42 @@ -# bitwardenrs_ldap +# vaultwarden-ldap -Custom image for the BitwardenRS LDAP connector +Custom image for the Vaultwarden LDAP connector -[![Build Status](https://img.shields.io/drone/build/docker/bitwardenrs_ldap?logo=drone&server=https%3A%2F%2Fdrone.rknet.org)](https://drone.rknet.org/docker/bitwardenrs_ldap) -[![Docker Hub](https://img.shields.io/badge/dockerhub-latest-blue.svg?logo=docker&logoColor=white)](https://hub.docker.com/r/thegeeklab/bitwardenrs_ldap) -[![Quay.io](https://img.shields.io/badge/quay-latest-blue.svg?logo=docker&logoColor=white)](https://quay.io/repository/thegeeklab/bitwardenrs_ldap) -[![Source: Gitea](https://img.shields.io/badge/source-gitea-blue.svg?logo=gitea&logoColor=white)](https://gitea.rknet.org/docker/bitwardenrs_ldap) -[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](https://gitea.rknet.org/docker/bitwardenrs_ldap/src/branch/main/LICENSE) +[![Build Status](https://img.shields.io/drone/build/docker/vaultwarden-ldap?logo=drone&server=https%3A%2F%2Fdrone.rknet.org)](https://drone.rknet.org/docker/vaultwarden-ldap) +[![Docker Hub](https://img.shields.io/badge/dockerhub-latest-blue.svg?logo=docker&logoColor=white)](https://hub.docker.com/r/thegeeklab/vaultwarden-ldap) +[![Quay.io](https://img.shields.io/badge/quay-latest-blue.svg?logo=docker&logoColor=white)](https://quay.io/repository/thegeeklab/vaultwarden-ldap) +[![Source: Gitea](https://img.shields.io/badge/source-gitea-blue.svg?logo=gitea&logoColor=white)](https://gitea.rknet.org/docker/vaultwarden-ldap) +[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](https://gitea.rknet.org/docker/vaultwarden-ldap/src/branch/main/LICENSE) -This is a rootless custom Docker image for [bitwarden_rs_ldap](https://github.com/ViViDboarder/bitwarden_rs_ldap) a simple LDAP connector for bitwarden_rs. +This is a rootless custom Docker image for [vaultwarden_ldap](https://github.com/ViViDboarder/vaultwarden_ldap) a simple LDAP connector for vaultwarden. ## Usage ### Docker Compose -Please take a look at the [example](https://gitea.rknet.org/docker/bitwardenrs_ldap/src/branch/main/docker-compose.yml) compose file from the git repo. +Please take a look at the [example](https://gitea.rknet.org/docker/vaultwarden-ldap/src/branch/main/docker-compose.yml) compose file from the git repo. ## Configuration ```Shell -BITWARDENRS_LDAP_BITWARDEN_URL= -BITWARDENRS_LDAP_BITWARDEN_ADMIN_TOKEN= -BITWARDENRS_LDAP_BITWARDEN_ROOT_CERT_FILE= - -BITWARDENRS_LDAP_HOST= -BITWARDENRS_LDAP_SCHEME= -BITWARDENRS_LDAP_SSL=True -BITWARDENRS_LDAP_SSL_VERIFY=True -BITWARDENRS_LDAP_PORT= -BITWARDENRS_LDAP_BIND_DN= -BITWARDENRS_LDAP_BIND_PASSWORD= -BITWARDENRS_LDAP_SEARCH_BASE_DN= -BITWARDENRS_LDAP_SEARCH_FILTER="(&(objectClass=*)(uid=*))" -BITWARDENRS_LDAP_MAIL_FIELD=mail -BITWARDENRS_LDAP_SYNC_INTERVAL_SECONDS=60 -BITWARDENRS_LDAP_SYNC_LOOP=True +VAULTWARDEN_LDAP_VAULTWARDEN_URL= +VAULTWARDEN_LDAP_VAULTWARDEN_ADMIN_TOKEN= +VAULTWARDEN_LDAP_VAULTWARDEN_ROOT_CERT_FILE= + +VAULTWARDEN_LDAP_HOST= +VAULTWARDEN_LDAP_SCHEME= +VAULTWARDEN_LDAP_SSL=True +VAULTWARDEN_LDAP_SSL_VERIFY=True +VAULTWARDEN_LDAP_PORT= +VAULTWARDEN_LDAP_BIND_DN= +VAULTWARDEN_LDAP_BIND_PASSWORD= +VAULTWARDEN_LDAP_SEARCH_BASE_DN= +VAULTWARDEN_LDAP_SEARCH_FILTER="(&(objectClass=*)(uid=*))" +VAULTWARDEN_LDAP_MAIL_FIELD=mail +VAULTWARDEN_LDAP_SYNC_INTERVAL_SECONDS=60 +VAULTWARDEN_LDAP_SYNC_LOOP=True ``` ## License -This project is licensed under the MIT License - see the [LICENSE](https://gitea.rknet.org/docker/bitwardenrs_ldap/src/branch/main/LICENSE) file for details. +This project is licensed under the MIT License - see the [LICENSE](https://gitea.rknet.org/docker/vaultwarden-ldap/src/branch/main/LICENSE) file for details. diff --git a/docker-compose.yml b/docker-compose.yml index c385caf..d133b4e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -6,7 +6,7 @@ services: container_name: postgres image: postgres environment: - POSTGRES_DB: bitwarden + POSTGRES_DB: vaultwarden POSTGRES_PASSWORD: pass POSTGRES_USER: user @@ -14,9 +14,9 @@ services: container_name: ldap image: osixia/openldap - bitwardenrs: - container_name: bitwardenrs_server - image: thegeeklab/bitwardenrs + vaultwarden: + container_name: vaultwarden_server + image: thegeeklab/vaultwarden depends_on: - postgres ports: @@ -24,24 +24,24 @@ services: volumes: - data:/app/data environment: - BITWARDENRS_DATABASE_URL: postgresql://user:pass@postgres:5432/bitwarden - BITWARDENRS_ADMIN_TOKEN: my_secure_token + VAULTWARDEN_DATABASE_URL: postgresql://user:pass@postgres:5432/vaultwarden + VAULTWARDEN_ADMIN_TOKEN: my_secure_token - bitwardenrs_ldap: + vaultwarden-ldap: container_name: ldap_sync restart: always - image: thegeeklab/bitwardenrs_ldap + image: thegeeklab/vaultwarden-ldap depends_on: - - bitwardenrs + - vaultwarden - ldap environment: - BITWARDENRS_LDAP_BITWARDEN_URL: http://bitwardenrs_server:8080 - BITWARDENRS_LDAP_BITWARDEN_ADMIN_TOKEN: my_secure_token - BITWARDENRS_LDAP_HOST: ldap - BITWARDENRS_LDAP_SSL: "False" - BITWARDENRS_LDAP_BIND_DN: "cn=admin,dc=example,dc=org" - BITWARDENRS_LDAP_SEARCH_BASE_DN: "dc=example,dc=org" - BITWARDENRS_LDAP_BIND_PASSWORD: admin + VAULTWARDEN_LDAP_VAULTWARDEN_URL: http://vaultwarden_server:8080 + VAULTWARDEN_LDAP_VAULTWARDEN_ADMIN_TOKEN: my_secure_token + VAULTWARDEN_LDAP_HOST: ldap + VAULTWARDEN_LDAP_SSL: "False" + VAULTWARDEN_LDAP_BIND_DN: "cn=admin,dc=example,dc=org" + VAULTWARDEN_LDAP_SEARCH_BASE_DN: "dc=example,dc=org" + VAULTWARDEN_LDAP_BIND_PASSWORD: admin volumes: data: diff --git a/overlay/etc/templates/config.toml.tmpl b/overlay/etc/templates/config.toml.tmpl index 1560860..6998592 100644 --- a/overlay/etc/templates/config.toml.tmpl +++ b/overlay/etc/templates/config.toml.tmpl @@ -1,22 +1,22 @@ -## Bitwarden_RS LDAP Configuration File -bitwarden_url = "{{ getenv "BITWARDENRS_LDAP_BITWARDEN_URL" }}" -bitwarden_admin_token = "{{ getenv "BITWARDENRS_LDAP_BITWARDEN_ADMIN_TOKEN" }}" -{{ if (getenv "BITWARDENRS_LDAP_BITWARDEN_ROOT_CERT_FILE") -}} -bitwarden_root_cert_file = "{{ getenv "BITWARDENRS_LDAP_BITWARDEN_ROOT_CERT_FILE" }}" +## Vaultwarden LDAP Configuration File +vaultwarden_url = "{{ getenv "VAULTWARDEN_LDAP_VAULTWARDEN_URL" }}" +vaultwarden_admin_token = "{{ getenv "VAULTWARDEN_LDAP_VAULTWARDEN_ADMIN_TOKEN" }}" +{{ if (getenv "VAULTWARDEN_LDAP_VAULTWARDEN_ROOT_CERT_FILE") -}} +vaultwarden_root_cert_file = "{{ getenv "VAULTWARDEN_LDAP_VAULTWARDEN_ROOT_CERT_FILE" }}" {{ end -}} -ldap_host = "{{ getenv "BITWARDENRS_LDAP_HOST" }}" -{{ if (getenv "BITWARDENRS_LDAP_SCHEME") -}} -ldap_scheme = "{{ getenv "BITWARDENRS_LDAP_SCHEME" }}" +ldap_host = "{{ getenv "VAULTWARDEN_LDAP_HOST" }}" +{{ if (getenv "VAULTWARDEN_LDAP_SCHEME") -}} +ldap_scheme = "{{ getenv "VAULTWARDEN_LDAP_SCHEME" }}" {{ end -}} -ldap_ssl = {{ getenv "BITWARDENRS_LDAP_SSL" "true" | conv.Bool }} -ldap_no_tls_verify = {{ not (getenv "BITWARDENRS_LDAP_SSL_VERIFY" "true" | conv.Bool) }} -{{ if (getenv "BITWARDENRS_LDAP_PORT") -}} -ldap_port = {{ getenv "BITWARDENRS_LDAP_PORT" }} +ldap_ssl = {{ getenv "VAULTWARDEN_LDAP_SSL" "true" | conv.Bool }} +ldap_no_tls_verify = {{ not (getenv "VAULTWARDEN_LDAP_SSL_VERIFY" "true" | conv.Bool) }} +{{ if (getenv "VAULTWARDEN_LDAP_PORT") -}} +ldap_port = {{ getenv "VAULTWARDEN_LDAP_PORT" }} {{ end -}} -ldap_bind_dn = "{{ getenv "BITWARDENRS_LDAP_BIND_DN" }}" -ldap_bind_password = "{{ getenv "BITWARDENRS_LDAP_BIND_PASSWORD" }}" -ldap_search_base_dn = "{{ getenv "BITWARDENRS_LDAP_SEARCH_BASE_DN" }}" -ldap_search_filter = "{{ getenv "BITWARDENRS_LDAP_SEARCH_FILTER" "(&(objectClass=*)(uid=*))" }}" -ldap_mail_field = "{{ getenv "BITWARDENRS_LDAP_MAIL_FIELD" "mail" }}" -ldap_sync_interval_seconds = {{ getenv "BITWARDENRS_LDAP_SYNC_INTERVAL_SECONDS" "60" }} -ldap_sync_loop = {{ getenv "BITWARDENRS_LDAP_SYNC_LOOP" "true" | conv.Bool }} +ldap_bind_dn = "{{ getenv "VAULTWARDEN_LDAP_BIND_DN" }}" +ldap_bind_password = "{{ getenv "VAULTWARDEN_LDAP_BIND_PASSWORD" }}" +ldap_search_base_dn = "{{ getenv "VAULTWARDEN_LDAP_SEARCH_BASE_DN" }}" +ldap_search_filter = "{{ getenv "VAULTWARDEN_LDAP_SEARCH_FILTER" "(&(objectClass=*)(uid=*))" }}" +ldap_mail_field = "{{ getenv "VAULTWARDEN_LDAP_MAIL_FIELD" "mail" }}" +ldap_sync_interval_seconds = {{ getenv "VAULTWARDEN_LDAP_SYNC_INTERVAL_SECONDS" "60" }} +ldap_sync_loop = {{ getenv "VAULTWARDEN_LDAP_SYNC_LOOP" "true" | conv.Bool }} diff --git a/overlay/usr/local/bin/entrypoint b/overlay/usr/local/bin/entrypoint index ff1252e..018577d 100755 --- a/overlay/usr/local/bin/entrypoint +++ b/overlay/usr/local/bin/entrypoint @@ -4,41 +4,41 @@ set -eo pipefail /usr/local/bin/gomplate -o /app/config.toml -f /etc/templates/config.toml.tmpl -if [ -z "$BITWARDENRS_LDAP_BITWARDEN_URL" ] || [ -z "$BITWARDENRS_LDAP_HOST" ] +if [ -z "$VAULTWARDEN_LDAP_VAULTWARDEN_URL" ] || [ -z "$VAULTWARDEN_LDAP_HOST" ] then - printf "Error: Bitwarden and/or LDAP server not configured. Exiting ...\n" + printf "Error: Vaultwarden and/or LDAP server not configured. Exiting ...\n" exit 1 fi -if [ -n "$BITWARDENRS_LDAP_BITWARDEN_URL" ] +if [ -n "$VAULTWARDEN_LDAP_VAULTWARDEN_URL" ] then - WAITFOR_BW_SCHEME=$(/usr/local/bin/url-parser scheme --url "$BITWARDENRS_LDAP_BITWARDEN_URL") - WAITFOR_BW_HOST=$(/usr/local/bin/url-parser host --url "$BITWARDENRS_LDAP_BITWARDEN_URL") - WAITFOR_BW_PORT=$(/usr/local/bin/url-parser port --url "$BITWARDENRS_LDAP_BITWARDEN_URL") + WAITFOR_BW_SCHEME=$(/usr/local/bin/url-parser scheme --url "$VAULTWARDEN_LDAP_VAULTWARDEN_URL") + WAITFOR_BW_HOST=$(/usr/local/bin/url-parser host --url "$VAULTWARDEN_LDAP_VAULTWARDEN_URL") + WAITFOR_BW_PORT=$(/usr/local/bin/url-parser port --url "$VAULTWARDEN_LDAP_VAULTWARDEN_URL") if [ -z "$WAITFOR_BW_PORT" ] then [ "$WAITFOR_BW_SCHEME" = "https" ] && WAITFOR_BW_PORT=433 || WAITFOR_BW_PORT=80 fi - printf "Wait for bitwarden server on '%s:%s'...\n" "${WAITFOR_BW_HOST}" "${WAITFOR_BW_PORT}" + printf "Wait for vaultwarden server on '%s:%s'...\n" "${WAITFOR_BW_HOST}" "${WAITFOR_BW_PORT}" /usr/local/bin/wait-for "${WAITFOR_BW_HOST}":"${WAITFOR_BW_PORT}" fi -if [ -n "$BITWARDENRS_LDAP_HOST" ] +if [ -n "$VAULTWARDEN_LDAP_HOST" ] then - WAITFOR_LDAP_SSL=$(/usr/local/bin/gomplate -i '{{ getenv "BITWARDENRS_LDAP_SSL" "true" | conv.Bool }}') + WAITFOR_LDAP_SSL=$(/usr/local/bin/gomplate -i '{{ getenv "VAULTWARDEN_LDAP_SSL" "true" | conv.Bool }}') - if [ -z "$BITWARDENRS_LDAP_PORT" ] + if [ -z "$VAULTWARDEN_LDAP_PORT" ] then - [ "$WAITFOR_LDAP_SSL" = true ] && BITWARDENRS_LDAP_PORT=636 || BITWARDENRS_LDAP_PORT=389 + [ "$WAITFOR_LDAP_SSL" = true ] && VAULTWARDEN_LDAP_PORT=636 || VAULTWARDEN_LDAP_PORT=389 fi - printf "Wait for ldap server on '%s:%s'...\n" "${BITWARDENRS_LDAP_HOST}" "${BITWARDENRS_LDAP_PORT}" - /usr/local/bin/wait-for "${BITWARDENRS_LDAP_HOST}":"${BITWARDENRS_LDAP_PORT}" + printf "Wait for ldap server on '%s:%s'...\n" "${VAULTWARDEN_LDAP_HOST}" "${VAULTWARDEN_LDAP_PORT}" + /usr/local/bin/wait-for "${VAULTWARDEN_LDAP_HOST}":"${VAULTWARDEN_LDAP_PORT}" # TODO: add delay to minimize connection errors sleep 10 fi -exec env CONFIG_PATH=/app/config.toml /app/bitwarden_rs_ldap +exec env CONFIG_PATH=/app/config.toml /app/vaultwarden_ldap diff --git a/renovate.json b/renovate.json index 9fd0a15..3e877f5 100644 --- a/renovate.json +++ b/renovate.json @@ -3,7 +3,7 @@ "extends": ["github>thegeeklab/renovate-presets:docker"], "packageRules": [ { - "groupName": "bitwarden ldap packages", + "groupName": "vaultwarden ldap packages", "matchDatasources": ["github-releases"], "matchPackagePatterns": ["^ViViDboarder"] }