Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebase to noble (development) #115

Merged
merged 2 commits into from
Jul 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/external_trigger.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
echo "**** External trigger running off of development branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_OMBI_DEVELOPMENT\". ****"
echo "External trigger running off of development branch. To disable this trigger, set a Github secret named \`PAUSE_EXTERNAL_TRIGGER_OMBI_DEVELOPMENT\`" >> $GITHUB_STEP_SUMMARY
echo "**** Retrieving external version ****"
EXT_RELEASE=$(curl -u "${{ secrets.CR_USER }}:${{ secrets.CR_PAT }}" -sX GET "https://api.github.com/repos/Ombi-app/ombi/releases" | jq -r '. | first(.[] | select(.prerelease == true)) | .tag_name')
EXT_RELEASE=$(curl -u "${{ secrets.CR_USER }}:${{ secrets.CR_PAT }}" -sX GET "https://api.github.com/repos/Ombi-app/Ombi/releases" | jq -r '.[0] | .tag_name')
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
echo "**** Can't retrieve external version, exiting ****"
FAILURE_REASON="Can't retrieve external version for ombi branch development"
Expand Down
13 changes: 7 additions & 6 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:jammy
FROM ghcr.io/linuxserver/baseimage-ubuntu:noble

# set version label
ARG BUILD_DATE
Expand All @@ -8,15 +8,15 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA
LABEL maintainer="aptalca"

# environment settings
ENV HOME="/config"
ENV DEBIAN_FRONTEND="noninteractive"
ENV HOME="/config" \
COMPlus_EnableDiagnostics=0 \
DEBIAN_FRONTEND="noninteractive" \
TMPDIR=/run/ombi-temp

RUN \
apt-get update && \
apt-get install -y \
jq \
libicu70 \
netcat && \
libicu74 && \
echo "**** install ombi ****" && \
mkdir -p \
/app/ombi && \
Expand All @@ -30,6 +30,7 @@ RUN \
tar xzf /tmp/ombi.tar.gz -C \
/app/ombi && \
chmod +x /app/ombi/Ombi && \
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
echo "**** clean up ****" && \
rm -rf \
/tmp/* \
Expand Down
13 changes: 7 additions & 6 deletions Dockerfile.aarch64
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-jammy
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-noble

# set version label
ARG BUILD_DATE
Expand All @@ -8,15 +8,15 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA
LABEL maintainer="aptalca"

# environment settings
ENV HOME="/config"
ENV DEBIAN_FRONTEND="noninteractive"
ENV HOME="/config" \
COMPlus_EnableDiagnostics=0 \
DEBIAN_FRONTEND="noninteractive" \
TMPDIR=/run/ombi-temp

RUN \
apt-get update && \
apt-get install -y \
jq \
libicu70 \
netcat && \
libicu74 && \
echo "**** install ombi ****" && \
mkdir -p \
/app/ombi && \
Expand All @@ -30,6 +30,7 @@ RUN \
tar xzf /tmp/ombi.tar.gz -C \
/app/ombi && \
chmod +x /app/ombi/Ombi && \
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
echo "**** clean up ****" && \
rm -rf \
/tmp/* \
Expand Down
39 changes: 23 additions & 16 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ pipeline {
GITLAB_TOKEN=credentials('b6f0f1dd-6952-4cf6-95d1-9c06380283f0')
GITLAB_NAMESPACE=credentials('gitlab-namespace-id')
DOCKERHUB_TOKEN=credentials('docker-hub-ci-pat')
JSON_URL = 'https://api.github.com/repos/Ombi-app/ombi/releases'
JSON_PATH = 'first(.[] | select(.prerelease == true)) | .tag_name'
EXT_USER = 'Ombi-app'
EXT_REPO = 'Ombi'
CONTAINER_NAME = 'ombi'
BUILD_VERSION_ARG = 'OMBI_RELEASE'
LS_USER = 'linuxserver'
Expand All @@ -34,8 +34,8 @@ pipeline {
CI_PORT='3579'
CI_SSL='false'
CI_DELAY='120'
CI_DOCKERENV='TZ=US/Pacific'
CI_AUTH='user:password'
CI_DOCKERENV=''
CI_AUTH=''
CI_WEBPATH=''
}
stages {
Expand Down Expand Up @@ -113,16 +113,23 @@ pipeline {
/* ########################
External Release Tagging
######################## */
// If this is a custom json endpoint parse the return to get external tag
stage("Set ENV custom_json"){
steps{
script{
env.EXT_RELEASE = sh(
script: '''curl -s ${JSON_URL} | jq -r ". | ${JSON_PATH}" ''',
returnStdout: true).trim()
env.RELEASE_LINK = env.JSON_URL
}
}
// If this is a devel github release use the first in an array from github to determine the ext tag
stage("Set ENV github_devel"){
steps{
script{
env.EXT_RELEASE = sh(
script: '''curl -H "Authorization: token ${GITHUB_TOKEN}" -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases | jq -r '.[0] | .tag_name' ''',
returnStdout: true).trim()
}
}
}
// If this is a stable or devel github release generate the link for the build message
stage("Set ENV github_link"){
steps{
script{
env.RELEASE_LINK = 'https://github.com/' + env.EXT_USER + '/' + env.EXT_REPO + '/releases/tag/' + env.EXT_RELEASE
}
}
}
// Sanitize the release tag and strip illegal docker or github characters
stage("Sanitize tag"){
Expand Down Expand Up @@ -855,11 +862,11 @@ pipeline {
"tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
echo "Pushing New release for Tag"
sh '''#! /bin/bash
echo "Data change at JSON endpoint ${JSON_URL}" > releasebody.json
curl -H "Authorization: token ${GITHUB_TOKEN}" -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases | jq '.[0] |.body' | sed 's:^.\\(.*\\).$:\\1:' > releasebody.json
echo '{"tag_name":"'${META_TAG}'",\
"target_commitish": "development",\
"name": "'${META_TAG}'",\
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**'${EXT_REPO}' Changes:**\\n\\n' > start
printf '","draft": false,"prerelease": true}' >> releasebody.json
paste -d'\\0' start releasebody.json > releasebody.json.done
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
Expand Down
14 changes: 6 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,9 @@ services:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- BASE_URL=/ #optional
volumes:
- /path/to/appdata/config:/config
- /path/to/ombi/config:/config
ports:
- 3579:3579
restart: unless-stopped
Expand All @@ -105,18 +106,13 @@ docker run -d \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Etc/UTC \
-e BASE_URL=/ `#optional` \
-p 3579:3579 \
-v /path/to/appdata/config:/config \
-v /path/to/ombi/config:/config \
--restart unless-stopped \
lscr.io/linuxserver/ombi:development
```

Using tags, you can choose between various versions of ombi. No tag is required to remain on the latest stable release.
Add one of the tags, if required, to the `linuxserver/ombi` line of the run/create command in the following format, `linuxserver/ombi:development`
The development tag will be the latest commit in the `develop` branch of ombi.
HOWEVER, USE THE DEVELOPMENT BRANCH AT YOUR OWN PERIL !!!!!!!!!


## Parameters

Containers are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate `<external>:<internal>` respectively. For example, `-p 8080:80` would expose port `80` from inside the container to be accessible from the host's IP on port `8080` outside the container.
Expand All @@ -127,6 +123,7 @@ Containers are configured using parameters passed at runtime (such as those abov
| `-e PUID=1000` | for UserID - see below for explanation |
| `-e PGID=1000` | for GroupID - see below for explanation |
| `-e TZ=Etc/UTC` | specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List). |
| `-e BASE_URL=/` | Subfolder can optionally be defined as an env variable for reverse proxies. Keep in mind that once this value is defined, the gui setting for base url no longer works. To use the gui setting, remove this env variable. |
| `-v /config` | Contains all relevant configuration files. |

## Environment variables from files (Docker secrets)
Expand Down Expand Up @@ -290,6 +287,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64

## Versions

* **08.07.24:** - Rebase to Ubuntu Noble.
* **01.07.23:** - Deprecate armhf. As announced [here](https://www.linuxserver.io/blog/a-farewell-to-arm-hf)
* **11.09.22:** - Migrate to s6v3.
* **01.05.22:** - Rebase to Jammy.
Expand Down
11 changes: 5 additions & 6 deletions jenkins-vars.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
# jenkins variables
project_name: docker-ombi
external_type: custom_json
external_type: github_devel
release_type: prerelease
release_tag: development
ls_branch: development
repo_vars:
- JSON_URL = 'https://api.github.com/repos/Ombi-app/ombi/releases'
- JSON_PATH = 'first(.[] | select(.prerelease == true)) | .tag_name'
- EXT_USER = 'Ombi-app'
- EXT_REPO = 'Ombi'
- CONTAINER_NAME = 'ombi'
- BUILD_VERSION_ARG = 'OMBI_RELEASE'
- LS_USER = 'linuxserver'
Expand All @@ -16,15 +16,14 @@ repo_vars:
- DEV_DOCKERHUB_IMAGE = 'lsiodev/ombi'
- PR_DOCKERHUB_IMAGE = 'lspipepr/ombi'
- DIST_IMAGE = 'ubuntu'
- DIST_TAG = 'bionic'
- MULTIARCH='true'
- CI='true'
- CI_WEB='true'
- CI_PORT='3579'
- CI_SSL='false'
- CI_DELAY='120'
- CI_DOCKERENV='TZ=US/Pacific'
- CI_AUTH='user:password'
- CI_DOCKERENV=''
- CI_AUTH=''
- CI_WEBPATH=''
sponsor_links:
- { name: "Ombi - Patreon", url: "https://patreon.com/tidusjar" }
Expand Down
19 changes: 11 additions & 8 deletions readme-vars.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,23 +20,26 @@ common_param_env_vars_enabled: true
param_container_name: "{{ project_name }}"
param_usage_include_vols: true
param_volumes:
- {vol_path: "/config", vol_host_path: "/path/to/appdata/config", desc: "Contains all relevant configuration files."}
- {vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/config", desc: "Contains all relevant configuration files."}
param_usage_include_ports: true
param_ports:
- {external_port: "3579", internal_port: "3579", port_desc: "web gui"}
param_usage_include_env: true
param_env_vars:
- {env_var: "TZ", env_value: "Europe/London", desc: "Specify a timezone to use EG Europe/London"}
# optional parameters
optional_block_1: true
optional_block_1_items:
- "Using tags, you can choose between various versions of ombi. No tag is required to remain on the latest stable release. \nAdd one of the tags, if required, to the `linuxserver/ombi` line of the run/create command in the following format, `linuxserver/ombi:development` \nThe development tag will be the latest commit in the `develop` branch of ombi. \nHOWEVER, USE THE DEVELOPMENT BRANCH AT YOUR OWN PERIL !!!!!!!!!\n"
# optional container parameters
opt_param_usage_include_env: true
opt_param_env_vars:
- {env_var: "BASE_URL", env_value: "/", desc: "Subfolder can optionally be defined as an env variable for reverse proxies. Keep in mind that once this value is defined, the gui setting for base url no longer works. To use the gui setting, remove this env variable."}

readonly_supported: true
readonly_message: |
* `BASE_URL` cannot be changed from `/`

# application setup block
app_setup_block_enabled: true
app_setup_block: |
Access the webui at `<your-ip>:3579`. Follow the setup wizard on initial install. Then configure the required services.
# changelog
changelogs:
- {date: "08.07.24:", desc: "Rebase to Ubuntu Noble."}
- {date: "01.07.23:", desc: "Deprecate armhf. As announced [here](https://www.linuxserver.io/blog/a-farewell-to-arm-hf)"}
- {date: "11.09.22:", desc: "Migrate to s6v3."}
- {date: "01.05.22:", desc: "Rebase to Jammy."}
Expand Down
11 changes: 11 additions & 0 deletions root/etc/s6-overlay/s6-rc.d/init-ombi-config/run
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash

mkdir -p /run/ombi-temp

# permissions
lsiown -R abc:abc \
/run/ombi-temp \
/config

lsiown abc:abc /app/ombi/ClientApp/dist/index.html > /dev/null 2>&1
1 change: 1 addition & 0 deletions root/etc/s6-overlay/s6-rc.d/init-ombi-config/up
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/etc/s6-overlay/s6-rc.d/init-ombi-config/run
6 changes: 0 additions & 6 deletions root/etc/s6-overlay/s6-rc.d/init-ombi/run

This file was deleted.

1 change: 0 additions & 1 deletion root/etc/s6-overlay/s6-rc.d/init-ombi/up

This file was deleted.

1 change: 1 addition & 0 deletions root/etc/s6-overlay/s6-rc.d/svc-ombi/run
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash

if [[ -n "${BASE_URL}" ]]; then
EXTRA_PARAM="--baseurl ${BASE_URL}"
Expand Down
Empty file.