diff --git a/bitnami/mastodon/4/debian-11/Dockerfile b/bitnami/mastodon/4/debian-11/Dockerfile index 3f9e570009f3..5c2242048b8e 100644 --- a/bitnami/mastodon/4/debian-11/Dockerfile +++ b/bitnami/mastodon/4/debian-11/Dockerfile @@ -3,13 +3,13 @@ FROM docker.io/bitnami/minideb:bullseye ARG TARGETARCH LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bullseye" \ - org.opencontainers.image.created="2023-03-14T05:31:13Z" \ + org.opencontainers.image.created="2023-03-18T22:33:00Z" \ org.opencontainers.image.description="Application packaged by VMware, Inc" \ org.opencontainers.image.licenses="Apache-2.0" \ - org.opencontainers.image.ref.name="4.1.0-debian-11-r8" \ + org.opencontainers.image.ref.name="4.1.1-debian-11-r0" \ org.opencontainers.image.title="mastodon" \ org.opencontainers.image.vendor="VMware, Inc." \ - org.opencontainers.image.version="4.1.0" + org.opencontainers.image.version="4.1.1" ENV HOME="/" \ OS_ARCH="${TARGETARCH:-amd64}" \ @@ -22,14 +22,14 @@ SHELL ["/bin/bash", "-o", "pipefail", "-c"] RUN install_packages acl ca-certificates curl ffmpeg imagemagick libbsd0 libbz2-1.0 libcom-err2 libcrypt1 libedit2 libffi7 libgcc-s1 libgmp10 libgnutls30 libgssapi-krb5-2 libhogweed6 libicu67 libidn11 libidn2-0 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 liblzma5 libmd0 libncursesw6 libnettle8 libnsl2 libp11-kit0 libpq5 libreadline-dev libreadline8 libsasl2-2 libsqlite3-0 libssl-dev libssl1.1 libstdc++6 libtasn1-6 libtinfo6 libtirpc3 libunistring2 libuuid1 libxml2 libxslt1.1 procps sqlite3 zlib1g RUN mkdir -p /tmp/bitnami/pkg/cache/ && cd /tmp/bitnami/pkg/cache/ && \ COMPONENTS=( \ - "python-3.8.16-7-linux-${OS_ARCH}-debian-11" \ - "wait-for-port-1.0.6-1-linux-${OS_ARCH}-debian-11" \ - "ruby-3.0.5-4-linux-${OS_ARCH}-debian-11" \ + "python-3.8.16-8-linux-${OS_ARCH}-debian-11" \ + "wait-for-port-1.0.6-2-linux-${OS_ARCH}-debian-11" \ + "ruby-3.0.5-5-linux-${OS_ARCH}-debian-11" \ "redis-client-7.0.9-0-linux-${OS_ARCH}-debian-11" \ - "postgresql-client-15.2.0-1-linux-${OS_ARCH}-debian-11" \ - "node-16.19.1-1-linux-${OS_ARCH}-debian-11" \ - "mastodon-4.1.0-0-linux-${OS_ARCH}-debian-11" \ - "gosu-1.16.0-2-linux-${OS_ARCH}-debian-11" \ + "postgresql-client-15.2.0-2-linux-${OS_ARCH}-debian-11" \ + "node-16.19.1-2-linux-${OS_ARCH}-debian-11" \ + "mastodon-4.1.1-0-linux-${OS_ARCH}-debian-11" \ + "gosu-1.16.0-3-linux-${OS_ARCH}-debian-11" \ ) && \ for COMPONENT in "${COMPONENTS[@]}"; do \ if [ ! -f "${COMPONENT}.tar.gz" ]; then \ @@ -46,7 +46,7 @@ RUN chmod g+rwX /opt/bitnami COPY rootfs / RUN /opt/bitnami/scripts/mastodon/postunpack.sh -ENV APP_VERSION="4.1.0" \ +ENV APP_VERSION="4.1.1" \ BITNAMI_APP_NAME="mastodon" \ PATH="/opt/bitnami/python/bin:/opt/bitnami/common/bin:/opt/bitnami/ruby/bin:/opt/bitnami/redis/bin:/opt/bitnami/postgresql/bin:/opt/bitnami/node/bin:/opt/bitnami/mastodon/bin:$PATH" diff --git a/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json b/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json index 7a703493d9c7..1dea94cb9b44 100644 --- a/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json +++ b/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json @@ -1,38 +1,38 @@ { "gosu": { "arch": "amd64", - "digest": "f6056076afb745fd7d9d87d20f71e7248d63330352cf5ae0be2130b7f44a8cfa", + "digest": "bf2b90a31df691e3648c4a41190a926bb638c3a9fa1dfcde36623ce1bfaadc23", "distro": "debian-11", "type": "NAMI", - "version": "1.16.0-2" + "version": "1.16.0-3" }, "mastodon": { "arch": "amd64", - "digest": "97f3823bc14dd301023274116ff24ce75b8bae6b6e9fe0b1094b790cc5c64c45", + "digest": "a0dd4e325f06f1004485634457a5d799da7b19f5973eed8e66d7f9b8ec6c74d0", "distro": "debian-11", "type": "NAMI", - "version": "4.1.0-0" + "version": "4.1.1-0" }, "node": { "arch": "amd64", - "digest": "af036d4ce8c216d61f662a522345caac4f4822fec1fdb2383302b5b1b9f2ffc9", + "digest": "984a00c0d1b2d456c942d8acbf7acca0aff455268bcf79bae9aa7cf00d95b1ba", "distro": "debian-11", "type": "NAMI", - "version": "16.19.1-1" + "version": "16.19.1-2" }, "postgresql-client": { "arch": "amd64", - "digest": "29659c3d87558bf03d65ffd4dfd4fee76cc89e05ec0ac595e26dc72b8e15dc14", + "digest": "f30b5782e06f5a81190143d77d76c364a73836ffa635b349478dcc1bee6b06ed", "distro": "debian-11", "type": "NAMI", - "version": "15.2.0-1" + "version": "15.2.0-2" }, "python": { "arch": "amd64", - "digest": "a4249f456ce331010413d741375847593c983fba42e31eb6e042db931dedd9f1", + "digest": "faf2f2e22f3ae88f12fb973d60295f7d63fab48c6909ae351e88ee31c5d296c6", "distro": "debian-11", "type": "NAMI", - "version": "3.8.16-7" + "version": "3.8.16-8" }, "redis-client": { "arch": "amd64", @@ -43,16 +43,16 @@ }, "ruby": { "arch": "amd64", - "digest": "39428f0e9ae6023c043d4e00810a62275a26e59d21e3f748d11e674e999bf49c", + "digest": "5ab43cc9190894791bc4314aa001e29fe71a967aa5628971f216a8887475b8ad", "distro": "debian-11", "type": "NAMI", - "version": "3.0.5-4" + "version": "3.0.5-5" }, "wait-for-port": { "arch": "amd64", - "digest": "be7c393d598ddf16d1c3c008a67b87879e48aca62071a208583390f2b41e6744", + "digest": "66c83aadf646d230d0cb097d9fe1663911bed94fabf8cbba2a17c39f7c6ffbcc", "distro": "debian-11", "type": "NAMI", - "version": "1.0.6-1" + "version": "1.0.6-2" } } \ No newline at end of file diff --git a/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/scripts/libservice.sh b/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/scripts/libservice.sh index 2d53aca9af84..2d4b7af6fd3a 100644 --- a/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/scripts/libservice.sh +++ b/bitnami/mastodon/4/debian-11/prebuildfs/opt/bitnami/scripts/libservice.sh @@ -281,6 +281,8 @@ remove_logrotate_conf() { # --environment - Environment variable to define (multiple --environment options may be passed) # --environment-file - Text file with environment variables # --exec-start - Start command (required) +# --exec-start-pre - Pre-start command (optional) +# --exec-start-post - Post-start command (optional) # --exec-stop - Stop command (optional) # --exec-reload - Reload command (optional) # --group - System group to start the service with @@ -292,6 +294,7 @@ remove_logrotate_conf() { # --success-exit-status - Exit code that indicates a successful shutdown # --type - Systemd unit type (defaults to forking) # --user - System user to start the service with +# --working-directory - Working directory at which to start the service # Returns: # None ######################### @@ -307,6 +310,8 @@ generate_systemd_conf() { local environment="" local environment_file="" local exec_start="" + local exec_start_pre="" + local exec_start_post="" local exec_stop="" local exec_reload="" local restart="always" @@ -316,6 +321,7 @@ generate_systemd_conf() { local limits_content="" local success_exit_status="" local custom_service_content="" + local working_directory="" # Parse CLI flags shift while [[ "$#" -gt 0 ]]; do @@ -334,6 +340,7 @@ generate_systemd_conf() { | --standard-error \ | --success-exit-status \ | --custom-service-content \ + | --working-directory \ ) var_name="$(echo "$1" | sed -e "s/^--//" -e "s/-/_/g")" shift @@ -345,11 +352,21 @@ generate_systemd_conf() { shift limits_content+="Limit${var_name^^}=${1:?"--limit-${var_name} value is missing"}" ;; + --exec-start-pre) + shift + [[ -n "$exec_start_pre" ]] && exec_start_pre+=$'\n' + exec_start_pre+="ExecStartPre=${1:?"--exec-start-pre value is missing"}" + ;; + --exec-start-post) + shift + [[ -n "$exec_start_post" ]] && exec_start_post+=$'\n' + exec_start_post+="ExecStartPost=${1:?"--exec-start-post value is missing"}" + ;; --environment) shift # It is possible to add multiple environment lines [[ -n "$environment" ]] && environment+=$'\n' - environment+="Environment=${1:?"environment" is missing}" + environment+="Environment=${1:?"--environment value is missing"}" ;; *) echo "Invalid command line flag ${1}" >&2 @@ -376,8 +393,21 @@ PartOf=bitnami.service [Service] Type=${type} -ExecStart=${exec_start} EOF + if [[ -n "$working_directory" ]]; then + cat >> "$service_file" <<< "WorkingDirectory=$working_directory" + fi + if [[ -n "$exec_start_pre" ]]; then + # This variable may contain multiple ExecStartPre= directives + cat >> "$service_file" <<< "$exec_start_pre" + fi + if [[ -n "$exec_start" ]]; then + cat >> "$service_file" <<< "ExecStart=${exec_start}" + fi + if [[ -n "$exec_start_post" ]]; then + # This variable may contain multiple ExecStartPost= directives + cat >> "$service_file" <<< "$exec_start_post" + fi # Optional stop and reload commands if [[ -n "$exec_stop" ]]; then cat >> "$service_file" <<< "ExecStop=${exec_stop}" @@ -399,8 +429,9 @@ EOF if [[ -n "$restart" ]]; then cat >> "$service_file" <<< "Restart=${restart}" fi - # Environment flags (may be specified multiple times in a unit) + # Environment flags if [[ -n "$environment" ]]; then + # This variable may contain multiple Environment= directives cat >> "$service_file" <<< "$environment" fi if [[ -n "$environment_file" ]]; then @@ -414,6 +445,7 @@ EOF cat >> "$service_file" <<< "StandardError=${standard_error}" fi if [[ -n "$custom_service_content" ]]; then + # This variable may contain multiple miscellaneous directives cat >> "$service_file" <<< "$custom_service_content" fi if [[ -n "$success_exit_status" ]]; then @@ -424,7 +456,8 @@ EOF fi cat >> "$service_file" < Mastodon is self-hosted social network server based on ActivityPub. Written in Ruby, features real-time updates, multimedia attachments and no vendor lock-in. [Overview of Mastodon](https://joinmastodon.org/) - Trademarks: This software listing is packaged by Bitnami. The respective trademarks mentioned in the offering are owned by the respective companies, and use of them does not imply any affiliation or endorsement. ## TL;DR