mirror of
https://github.com/linuxserver/docker-unifi-network-application.git
synced 2025-03-05 20:59:58 -08:00
Merge remote-tracking branch 'origin/main' into replace-placeholers-in-proeprties
This commit is contained in:
commit
41b367182a
4
.github/ISSUE_TEMPLATE/issue.bug.yml
vendored
4
.github/ISSUE_TEMPLATE/issue.bug.yml
vendored
|
@ -67,10 +67,10 @@ body:
|
|||
- type: textarea
|
||||
attributes:
|
||||
description: |
|
||||
Provide a full docker log, output of "docker logs linuxserver.io"
|
||||
Provide a full docker log, output of "docker logs unifi-network-application"
|
||||
label: Container logs
|
||||
placeholder: |
|
||||
Output of `docker logs linuxserver.io`
|
||||
Output of `docker logs unifi-network-application`
|
||||
render: bash
|
||||
validations:
|
||||
required: true
|
||||
|
|
2
.github/workflows/external_trigger.yml
vendored
2
.github/workflows/external_trigger.yml
vendored
|
@ -7,7 +7,7 @@ jobs:
|
|||
external-trigger-main:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3.1.0
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: External Trigger
|
||||
if: github.ref == 'refs/heads/main'
|
||||
|
|
|
@ -9,7 +9,7 @@ jobs:
|
|||
external-trigger-scheduler:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3.1.0
|
||||
- uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
|
||||
|
|
2
.github/workflows/package_trigger.yml
vendored
2
.github/workflows/package_trigger.yml
vendored
|
@ -7,7 +7,7 @@ jobs:
|
|||
package-trigger-main:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3.1.0
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Package Trigger
|
||||
if: github.ref == 'refs/heads/main'
|
||||
|
|
|
@ -9,7 +9,7 @@ jobs:
|
|||
package-trigger-scheduler:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3.1.0
|
||||
- uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
|
||||
|
|
336
Jenkinsfile
vendored
336
Jenkinsfile
vendored
|
@ -245,9 +245,11 @@ pipeline {
|
|||
-v ${WORKSPACE}:/mnt \
|
||||
-e AWS_ACCESS_KEY_ID=\"${S3_KEY}\" \
|
||||
-e AWS_SECRET_ACCESS_KEY=\"${S3_SECRET}\" \
|
||||
ghcr.io/linuxserver/baseimage-alpine:3.17 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
|
||||
apk add --no-cache py3-pip && \
|
||||
pip install s3cmd && \
|
||||
ghcr.io/linuxserver/baseimage-alpine:3.19 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
|
||||
apk add --no-cache python3 && \
|
||||
python3 -m venv /lsiopy && \
|
||||
pip install --no-cache-dir -U pip && \
|
||||
pip install --no-cache-dir s3cmd && \
|
||||
s3cmd put --no-preserve --acl-public -m text/xml /mnt/shellcheck-result.xml s3://ci-tests.linuxserver.io/${IMAGE}/${META_TAG}/shellcheck-result.xml" || :'''
|
||||
}
|
||||
}
|
||||
|
@ -262,150 +264,176 @@ pipeline {
|
|||
}
|
||||
}
|
||||
steps {
|
||||
withCredentials([
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
||||
usernameVariable: 'DOCKERUSER',
|
||||
passwordVariable: 'DOCKERPASS'
|
||||
]
|
||||
]) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
TEMPDIR=$(mktemp -d)
|
||||
docker pull ghcr.io/linuxserver/jenkins-builder:latest
|
||||
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=main -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
|
||||
# Stage 1 - Jenkinsfile update
|
||||
if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f main
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
|
||||
git add Jenkinsfile
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Updating Jenkinsfile"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "Jenkinsfile is up to date."
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
TEMPDIR=$(mktemp -d)
|
||||
docker pull ghcr.io/linuxserver/jenkins-builder:latest
|
||||
# Cloned repo paths for templating:
|
||||
# ${TEMPDIR}/docker-${CONTAINER_NAME}: Cloned branch main of ${LS_USER}/${LS_REPO} for running the jenkins builder on
|
||||
# ${TEMPDIR}/repo/${LS_REPO}: Cloned branch main of ${LS_USER}/${LS_REPO} for commiting various templated file changes and pushing back to Github
|
||||
# ${TEMPDIR}/docs/docker-documentation: Cloned docs repo for pushing docs updates to Github
|
||||
# ${TEMPDIR}/unraid/docker-templates: Cloned docker-templates repo to check for logos
|
||||
# ${TEMPDIR}/unraid/templates: Cloned templates repo for commiting unraid template changes and pushing back to Github
|
||||
git clone --branch main --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true ghcr.io/linuxserver/jenkins-builder:latest
|
||||
echo "Starting Stage 1 - Jenkinsfile update"
|
||||
if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f main
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
|
||||
git add Jenkinsfile
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Updating Jenkinsfile and exiting build, new one will trigger based on commit"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "Jenkinsfile is up to date."
|
||||
fi
|
||||
echo "Starting Stage 2 - Delete old templates"
|
||||
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf"
|
||||
for i in ${OLD_TEMPLATES}; do
|
||||
if [[ -f "${i}" ]]; then
|
||||
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
|
||||
fi
|
||||
# Stage 2 - Delete old templates
|
||||
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf"
|
||||
for i in ${OLD_TEMPLATES}; do
|
||||
if [[ -f "${i}" ]]; then
|
||||
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
|
||||
fi
|
||||
done
|
||||
if [[ -n "${TEMPLATES_TO_DELETE}" ]]; then
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f main
|
||||
for i in ${TEMPLATES_TO_DELETE}; do
|
||||
git rm "${i}"
|
||||
done
|
||||
if [[ -n "${TEMPLATES_TO_DELETE}" ]]; then
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f main
|
||||
for i in ${TEMPLATES_TO_DELETE}; do
|
||||
git rm "${i}"
|
||||
done
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Deleting old and deprecated templates"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "No templates to delete"
|
||||
fi
|
||||
# Stage 3 - Update templates
|
||||
CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Deleting old/deprecated templates and exiting build, new one will trigger based on commit"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "No templates to delete"
|
||||
fi
|
||||
echo "Starting Stage 3 - Update templates"
|
||||
CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
NEWHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
if [[ "${CURRENTHASH}" != "${NEWHASH}" ]] || ! grep -q '.jenkins-external' "${WORKSPACE}/.gitignore" 2>/dev/null; then
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f main
|
||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
NEWHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
if [[ "${CURRENTHASH}" != "${NEWHASH}" ]] || ! grep -q '.jenkins-external' "${WORKSPACE}/.gitignore" 2>/dev/null; then
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f main
|
||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
|
||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
|
||||
cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/ || :
|
||||
cp --parents readme-vars.yml ${TEMPDIR}/repo/${LS_REPO}/ || :
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}/
|
||||
if ! grep -q '.jenkins-external' .gitignore 2>/dev/null; then
|
||||
echo ".jenkins-external" >> .gitignore
|
||||
git add .gitignore
|
||||
fi
|
||||
git add readme-vars.yml ${TEMPLATED_FILES}
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
|
||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
|
||||
cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/ || :
|
||||
cp --parents readme-vars.yml ${TEMPDIR}/repo/${LS_REPO}/ || :
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}/
|
||||
if ! grep -q '.jenkins-external' .gitignore 2>/dev/null; then
|
||||
echo ".jenkins-external" >> .gitignore
|
||||
git add .gitignore
|
||||
fi
|
||||
git add readme-vars.yml ${TEMPLATED_FILES}
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git main
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Updating templates and exiting build, new one will trigger based on commit"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "No templates to update"
|
||||
fi
|
||||
echo "Starting Stage 4 - External repo updates: Docs, Unraid Template and Readme Sync to Docker Hub"
|
||||
mkdir -p ${TEMPDIR}/docs
|
||||
git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/docs/docker-documentation
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/docs/docker-documentation/docs/images/
|
||||
cd ${TEMPDIR}/docs/docker-documentation
|
||||
GH_DOCS_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
||||
git add docs/images/docker-${CONTAINER_NAME}.md
|
||||
echo "Updating docs repo"
|
||||
git commit -m 'Bot Updating Documentation'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} --rebase
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} || \
|
||||
(MAXWAIT="10" && echo "Push to docs failed, trying again in ${MAXWAIT} seconds" && \
|
||||
sleep $((RANDOM % MAXWAIT)) && \
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} --rebase && \
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH})
|
||||
else
|
||||
echo "Docs update not needed, skipping"
|
||||
fi
|
||||
mkdir -p ${TEMPDIR}/unraid
|
||||
git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates
|
||||
git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates
|
||||
if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-logo.png ]]; then
|
||||
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-logo.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
|
||||
elif [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then
|
||||
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
|
||||
fi
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
|
||||
echo "Updating Unraid template"
|
||||
cd ${TEMPDIR}/unraid/templates/
|
||||
GH_TEMPLATES_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
||||
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
|
||||
echo "Image is on the ignore list, marking Unraid template as deprecated"
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
|
||||
git add -u unraid/${CONTAINER_NAME}.xml
|
||||
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
|
||||
git commit -m 'Bot Moving Deprecated Unraid Template' || :
|
||||
else
|
||||
echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
|
||||
git add unraid/${CONTAINER_NAME}.xml
|
||||
git commit -m 'Bot Updating Unraid Template'
|
||||
fi
|
||||
mkdir -p ${TEMPDIR}/docs
|
||||
git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/docs/docker-documentation
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/docs/docker-documentation/docs/images/
|
||||
cd ${TEMPDIR}/docs/docker-documentation
|
||||
GH_DOCS_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
||||
git add docs/images/docker-${CONTAINER_NAME}.md
|
||||
git commit -m 'Bot Updating Documentation'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH}
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH}
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} --rebase
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} || \
|
||||
(MAXWAIT="10" && echo "Push to unraid templates failed, trying again in ${MAXWAIT} seconds" && \
|
||||
sleep $((RANDOM % MAXWAIT)) && \
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} --rebase && \
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH})
|
||||
else
|
||||
echo "No updates to Unraid template needed, skipping"
|
||||
fi
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]]; then
|
||||
if [[ $(cat ${TEMPDIR}/docker-${CONTAINER_NAME}/README.md | wc -m) -gt 25000 ]]; then
|
||||
echo "Readme is longer than 25,000 characters. Syncing the lite version to Docker Hub"
|
||||
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/README.lite"
|
||||
else
|
||||
echo "Syncing readme to Docker Hub"
|
||||
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/README.md"
|
||||
fi
|
||||
mkdir -p ${TEMPDIR}/unraid
|
||||
git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates
|
||||
git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates
|
||||
if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-logo.png ]]; then
|
||||
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-logo.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
|
||||
elif [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then
|
||||
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
|
||||
fi
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
|
||||
cd ${TEMPDIR}/unraid/templates/
|
||||
GH_TEMPLATES_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
||||
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
|
||||
echo "Image is on the ignore list, marking Unraid template as deprecated"
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
|
||||
git add -u unraid/${CONTAINER_NAME}.xml
|
||||
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
|
||||
git commit -m 'Bot Moving Deprecated Unraid Template' || :
|
||||
else
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
|
||||
git add unraid/${CONTAINER_NAME}.xml
|
||||
git commit -m 'Bot Updating Unraid Template'
|
||||
fi
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH}
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH}
|
||||
fi
|
||||
# Stage 4 - Sync Readme to Docker Hub
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]]; then
|
||||
if [[ $(cat ${TEMPDIR}/docker-${CONTAINER_NAME}/README.md | wc -m) > 25000 ]]; then
|
||||
echo "Readme is longer than 25,000 characters. Syncing the lite version to Docker Hub"
|
||||
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/README.lite"
|
||||
else
|
||||
echo "Syncing readme to Docker Hub"
|
||||
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/README.md"
|
||||
fi
|
||||
DH_TOKEN=$(curl -d '{"username":"'${DOCKERUSER}'", "password":"'${DOCKERHUB_TOKEN}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token')
|
||||
if curl -s https://hub.docker.com/v2/namespaces/${DOCKERHUB_IMAGE%%/*}/repositories/${DOCKERHUB_IMAGE##*/}/tags | jq -r '.message' | grep -q 404; then
|
||||
echo "Docker Hub endpoint doesn't exist. Creating endpoint first."
|
||||
DH_TOKEN=$(curl -d '{"username":"linuxserverci", "password":"'${DOCKERHUB_TOKEN}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token')
|
||||
curl -s \
|
||||
-H "Authorization: JWT ${DH_TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-X PATCH \
|
||||
-d "{\\"full_description\\":$(jq -Rsa . ${DH_README_SYNC_PATH})}" \
|
||||
https://hub.docker.com/v2/repositories/${DOCKERHUB_IMAGE} || :
|
||||
else
|
||||
echo "Not the default Github branch. Skipping readme sync to Docker Hub."
|
||||
-X POST \
|
||||
-d '{"name":"'${DOCKERHUB_IMAGE##*/}'", "namespace":"'${DOCKERHUB_IMAGE%%/*}'"}' \
|
||||
https://hub.docker.com/v2/repositories/ || :
|
||||
fi
|
||||
rm -Rf ${TEMPDIR}'''
|
||||
script{
|
||||
env.FILES_UPDATED = sh(
|
||||
script: '''cat /tmp/${COMMIT_SHA}-${BUILD_NUMBER}''',
|
||||
returnStdout: true).trim()
|
||||
}
|
||||
DH_TOKEN=$(curl -d '{"username":"linuxserverci", "password":"'${DOCKERHUB_TOKEN}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token')
|
||||
curl -s \
|
||||
-H "Authorization: JWT ${DH_TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-X PATCH \
|
||||
-d "{\\"full_description\\":$(jq -Rsa . ${DH_README_SYNC_PATH})}" \
|
||||
https://hub.docker.com/v2/repositories/${DOCKERHUB_IMAGE} || :
|
||||
else
|
||||
echo "Not the default Github branch. Skipping readme sync to Docker Hub."
|
||||
fi
|
||||
rm -Rf ${TEMPDIR}'''
|
||||
script{
|
||||
env.FILES_UPDATED = sh(
|
||||
script: '''cat /tmp/${COMMIT_SHA}-${BUILD_NUMBER}''',
|
||||
returnStdout: true).trim()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -455,14 +483,16 @@ pipeline {
|
|||
}
|
||||
steps{
|
||||
sh '''curl -H "Content-Type: application/json" -H "Private-Token: ${GITLAB_TOKEN}" -X POST https://gitlab.com/api/v4/projects \
|
||||
-d '{"namespace_id":'${GITLAB_NAMESPACE}',\
|
||||
"name":"'${LS_REPO}'",
|
||||
"mirror":true,\
|
||||
"import_url":"https://github.com/linuxserver/'${LS_REPO}'.git",\
|
||||
"issues_access_level":"disabled",\
|
||||
"merge_requests_access_level":"disabled",\
|
||||
"repository_access_level":"enabled",\
|
||||
"visibility":"public"}' '''
|
||||
-d '{"namespace_id":'${GITLAB_NAMESPACE}',\
|
||||
"name":"'${LS_REPO}'",
|
||||
"mirror":true,\
|
||||
"import_url":"https://github.com/linuxserver/'${LS_REPO}'.git",\
|
||||
"issues_access_level":"disabled",\
|
||||
"merge_requests_access_level":"disabled",\
|
||||
"repository_access_level":"enabled",\
|
||||
"visibility":"public"}' '''
|
||||
sh '''curl -H "Private-Token: ${GITLAB_TOKEN}" -X PUT "https://gitlab.com/api/v4/projects/Linuxserver.io%2F${LS_REPO}" \
|
||||
-d "mirror=true&import_url=https://github.com/linuxserver/${LS_REPO}.git" '''
|
||||
}
|
||||
}
|
||||
/* ###############
|
||||
|
@ -703,12 +733,6 @@ pipeline {
|
|||
}
|
||||
steps {
|
||||
withCredentials([
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
||||
usernameVariable: 'DOCKERUSER',
|
||||
passwordVariable: 'DOCKERPASS'
|
||||
],
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: 'Quay.io-Robot',
|
||||
|
@ -719,7 +743,7 @@ pipeline {
|
|||
retry(5) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
|
@ -750,12 +774,6 @@ pipeline {
|
|||
}
|
||||
steps {
|
||||
withCredentials([
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
||||
usernameVariable: 'DOCKERUSER',
|
||||
passwordVariable: 'DOCKERPASS'
|
||||
],
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: 'Quay.io-Robot',
|
||||
|
@ -766,7 +784,7 @@ pipeline {
|
|||
retry(5) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
|
|
|
@ -64,7 +64,7 @@ After setup, the web UI is available at https://ip:8443. The application can be
|
|||
|
||||
### Setting Up Your External Database
|
||||
|
||||
Formally only mongodb 3.6 through 4.4 are supported, however, it has been reported that newer versions will work. If you choose to use a newer version be aware that you will not be operating a supported configuration.
|
||||
Starting with version 8.1 of Unifi Network Application, mongodb 3.6 through 7.0 are supported.
|
||||
|
||||
**Make sure you pin your database image version and do not use `latest`, as mongodb does not support automatic upgrades between major versions.**
|
||||
|
||||
|
@ -155,7 +155,7 @@ services:
|
|||
- MONGO_TLS= #optional
|
||||
- MONGO_AUTHSOURCE= #optional
|
||||
volumes:
|
||||
- /path/to/data:/config
|
||||
- /path/to/unifi-network-application/data:/config
|
||||
ports:
|
||||
- 8443:8443
|
||||
- 3478:3478/udp
|
||||
|
@ -195,7 +195,7 @@ docker run -d \
|
|||
-p 8880:8880 `#optional` \
|
||||
-p 6789:6789 `#optional` \
|
||||
-p 5514:5514/udp `#optional` \
|
||||
-v /path/to/data:/config \
|
||||
-v /path/to/unifi-network-application/data:/config \
|
||||
--restart unless-stopped \
|
||||
lscr.io/linuxserver/unifi-network-application:latest
|
||||
```
|
||||
|
@ -227,7 +227,7 @@ Containers are configured using parameters passed at runtime (such as those abov
|
|||
| `-e MEM_STARTUP=1024` | Optionally change the Java initial/minimum memory (in Megabytes). Set to `default` to reset to default |
|
||||
| `-e MONGO_TLS=` | Mongodb enable [TLS](https://www.mongodb.com/docs/manual/reference/connection-string/#mongodb-urioption-urioption.tls). Only evaluated on first run. |
|
||||
| `-e MONGO_AUTHSOURCE=` | Mongodb [authSource](https://www.mongodb.com/docs/manual/reference/connection-string/#mongodb-urioption-urioption.authSource). For Atlas set to `admin`.Defaults to `MONGO_DBNAME`.Only evaluated on first run. |
|
||||
| `-v /config` | All Unifi data stored here |
|
||||
| `-v /config` | Persistent config files |
|
||||
|
||||
## Environment variables from files (Docker secrets)
|
||||
|
||||
|
|
|
@ -1,46 +1,47 @@
|
|||
NAME VERSION TYPE
|
||||
ace java-archive
|
||||
activation 1.1.1 java-archive
|
||||
adduser 3.118ubuntu5 deb
|
||||
analytics-api 1.3.1 java-archive
|
||||
analytics-client 1.3.1 java-archive
|
||||
analytics-privacy 1.3.1 java-archive
|
||||
analytics-api 2.0.0 java-archive
|
||||
analytics-client 2.0.0 java-archive
|
||||
analytics-privacy 2.0.0 java-archive
|
||||
annotations 3.0.1 java-archive
|
||||
antlr4-runtime 4.5.3 java-archive
|
||||
api-common 1.7.0 java-archive
|
||||
apigateway-generic-java-sdk 1.3 java-archive
|
||||
apt 2.4.11 deb
|
||||
apt-utils 2.4.11 deb
|
||||
asn-one 0.6.0 java-archive
|
||||
aws-iot-device-sdk-java 1.2.0 java-archive
|
||||
aws-java-sdk-core 1.11.409 java-archive
|
||||
aws-java-sdk-s3 1.11.409 java-archive
|
||||
base-files 12ubuntu4.3 deb
|
||||
base-files 12ubuntu4.6 deb
|
||||
base-passwd 3.5.52build1 deb
|
||||
bash 5.1-6ubuntu1 deb
|
||||
bash 5.1-6ubuntu1.1 deb
|
||||
bash 5.1.16 binary
|
||||
bcpkix-jdk15on 1.60 java-archive
|
||||
bcprov-jdk15on 1.60 java-archive
|
||||
bcpkix-jdk18on 1.75 java-archive
|
||||
bcprov-jdk18on 1.75 java-archive
|
||||
bcutil-jdk18on 1.75 java-archive
|
||||
bsdutils 1:2.37.2-4ubuntu3 deb
|
||||
bson 4.6.1 java-archive
|
||||
bson-record-codec 4.6.1 java-archive
|
||||
bson 4.11.1 java-archive
|
||||
bson-record-codec 4.11.1 java-archive
|
||||
ca-certificates 20230311ubuntu0.22.04.1 deb
|
||||
ca-certificates-java java-archive
|
||||
ca-certificates-java 20190909ubuntu1.2 deb
|
||||
checker-qual 3.12.0 java-archive
|
||||
classmate 1.5.1 java-archive
|
||||
classmate 1.6.0 java-archive
|
||||
coloring 1.0 java-archive
|
||||
commons-beanutils 1.9.2 java-archive
|
||||
commons-beanutils 1.9.4 java-archive
|
||||
commons-cli 1.4 java-archive
|
||||
commons-codec 1.15 java-archive
|
||||
commons-codec 1.16.0 java-archive
|
||||
commons-daemon 1.0.15 java-archive
|
||||
commons-io 2.11.0 java-archive
|
||||
commons-lang3 3.12.0 java-archive
|
||||
commons-lang3 3.13.0 java-archive
|
||||
commons-logging 1.2 java-archive
|
||||
commons-net 3.8.0 java-archive
|
||||
commons-text 1.10.0 java-archive
|
||||
commons-validator 1.6 java-archive
|
||||
commons-net 3.10.0 java-archive
|
||||
commons-text 1.11.0 java-archive
|
||||
commons-validator 1.7 java-archive
|
||||
compiler 0.9.6 java-archive
|
||||
coreutils 8.32-4.1ubuntu1 deb
|
||||
coreutils 8.32-4.1ubuntu1.1 deb
|
||||
cron 3.0pl1-137ubuntu3 deb
|
||||
cron4j 2.2.5 java-archive
|
||||
curl 7.81.0-1ubuntu1.15 deb
|
||||
|
@ -50,17 +51,17 @@ debianutils 5.5-1ubuntu2
|
|||
diffutils 1:3.8-0ubuntu2 deb
|
||||
dirmngr 2.2.27-3ubuntu2.1 deb
|
||||
dom4j 1.6.1 java-archive
|
||||
dpkg 1.21.1ubuntu2.2 deb
|
||||
dpkg 1.21.1ubuntu2.3 deb
|
||||
e2fsprogs 1.46.5-2ubuntu1.1 deb
|
||||
ecj 3.18.0 java-archive
|
||||
eddsa 0.2.0 java-archive
|
||||
ecj 3.33.0 java-archive
|
||||
eddsa 0.3.0 java-archive
|
||||
error_prone_annotations 2.7.1 java-archive
|
||||
failureaccess 1.0.1 java-archive
|
||||
findutils 4.8.0-1ubuntu3 deb
|
||||
fontconfig-config 2.13.1-4.2ubuntu5 deb
|
||||
fonts-dejavu-core 2.37-2build1 deb
|
||||
gax 1.31.0 java-archive
|
||||
gcc-12-base 12.1.0-2ubuntu1~22.04 deb
|
||||
gcc-12-base 12.3.0-1ubuntu1~22.04 deb
|
||||
gnupg 2.2.27-3ubuntu2.1 deb
|
||||
gnupg-l10n 2.2.27-3ubuntu2.1 deb
|
||||
gnupg-utils 2.2.27-3ubuntu2.1 deb
|
||||
|
@ -92,35 +93,39 @@ grep 3.7-1build1
|
|||
gson 2.9.0 java-archive
|
||||
guava 31.0.1-jre java-archive
|
||||
gzip 1.10-4ubuntu4.1 deb
|
||||
hibernate-validator 6.2.3.Final java-archive
|
||||
hibernate-validator 8.0.1.Final java-archive
|
||||
hostname 3.23ubuntu2 deb
|
||||
httpclient 4.5.13 java-archive
|
||||
httpcore 4.4.15 java-archive
|
||||
httpmime 4.5.13 java-archive
|
||||
httpclient 4.5.5 java-archive
|
||||
httpclient5 5.2.3 java-archive
|
||||
httpcore 4.4.16 java-archive
|
||||
httpcore5 5.2.4 java-archive
|
||||
httpcore5-h2 5.2.4 java-archive
|
||||
init-system-helpers 1.62 deb
|
||||
istack-commons-runtime 3.0.5 java-archive
|
||||
j2objc-annotations 1.3 java-archive
|
||||
jackson-annotations 2.13.3 java-archive
|
||||
jackson-core 2.13.3 java-archive
|
||||
jackson-databind 2.13.3 java-archive
|
||||
jackson-datatype-jdk8 2.13.3 java-archive
|
||||
jackson-datatype-jsr310 2.13.3 java-archive
|
||||
jackson-module-parameter-names 2.13.3 java-archive
|
||||
jakarta.annotation-api 1.3.5 java-archive
|
||||
jakarta.validation-api 2.0.2 java-archive
|
||||
java-binme 1.0 java-archive
|
||||
jackson-annotations 2.15.3 java-archive
|
||||
jackson-core 2.15.3 java-archive
|
||||
jackson-databind 2.15.3 java-archive
|
||||
jackson-datatype-jdk8 2.15.3 java-archive
|
||||
jackson-datatype-jsr310 2.15.3 java-archive
|
||||
jackson-module-parameter-names 2.15.3 java-archive
|
||||
jakarta.activation 2.0.1 java-archive
|
||||
jakarta.annotation-api 2.1.1 java-archive
|
||||
jakarta.mail 2.0.1 java-archive
|
||||
jakarta.validation-api 3.0.2 java-archive
|
||||
java-binme 2.0.0 java-archive
|
||||
java-common 0.72build2 deb
|
||||
java-ipv6 0.17 java-archive
|
||||
java-semver 0.9.0 java-archive
|
||||
java-ucp 1.1 java-archive
|
||||
java-uuid-generator 4.0.1 java-archive
|
||||
javax.mail 1.6.2 java-archive
|
||||
jaxb-api 2.3.0 java-archive
|
||||
jaxb-core 2.3.0.1 java-archive
|
||||
jaxb-impl 2.3.0.1 java-archive
|
||||
jaxb-runtime 2.3.0.1 java-archive
|
||||
jboss-logging 3.4.3.Final java-archive
|
||||
jcl-over-slf4j 1.7.36 java-archive
|
||||
jbcrypt 0.4 java-archive
|
||||
jboss-logging 3.5.3.Final java-archive
|
||||
jcl-over-slf4j 2.0.11 java-archive
|
||||
jenetics 4.2.0 java-archive
|
||||
jgrapht-core 1.0.1 java-archive
|
||||
jgrapht-ext 1.0.1 java-archive
|
||||
|
@ -129,14 +134,14 @@ jmdns 3.4.1
|
|||
jna 5.9.0 java-archive
|
||||
joda-time 2.10.4 java-archive
|
||||
jq 1.6-2.1ubuntu3 deb
|
||||
jrt-fs 17.0.9 java-archive
|
||||
jrt-fs 17.0.10 java-archive
|
||||
json 20190722 java-archive
|
||||
jsr305 3.0.1 java-archive
|
||||
jsr305 3.0.2 java-archive
|
||||
jstl 1.2 java-archive
|
||||
jstun 0.7.4 java-archive
|
||||
jsvc 1.0.15-8 deb
|
||||
jul-to-slf4j 1.7.36 java-archive
|
||||
jul-to-slf4j 2.0.11 java-archive
|
||||
lazysodium-java 5.1.2 java-archive
|
||||
libacl1 2.3.1-1 deb
|
||||
libapt-pkg6.0 2.4.11 deb
|
||||
|
@ -153,45 +158,45 @@ libblkid1 2.37.2-4ubuntu3
|
|||
libbrotli1 1.0.9-2build6 deb
|
||||
libbsd0 0.11.5-1 deb
|
||||
libbz2-1.0 1.0.8-5build1 deb
|
||||
libc-bin 2.35-0ubuntu3.1 deb
|
||||
libc6 2.35-0ubuntu3.1 deb
|
||||
libc-bin 2.35-0ubuntu3.6 deb
|
||||
libc6 2.35-0ubuntu3.6 deb
|
||||
libcap-ng0 0.7.9-2.2build3 deb
|
||||
libcap2 1:2.44-1ubuntu0.22.04.1 deb
|
||||
libcom-err2 1.46.5-2ubuntu1.1 deb
|
||||
libcommons-daemon-java 1.0.15-8 deb
|
||||
libcrypt1 1:4.4.27-1 deb
|
||||
libcups2 2.4.1op1-1ubuntu4.7 deb
|
||||
libcups2 2.4.1op1-1ubuntu4.8 deb
|
||||
libcurl4 7.81.0-1ubuntu1.15 deb
|
||||
libdb5.3 5.3.28+dfsg1-0.8ubuntu3 deb
|
||||
libdbus-1-3 1.12.20-2ubuntu4.1 deb
|
||||
libdebconfclient0 0.261ubuntu1 deb
|
||||
libexpat1 2.4.7-1ubuntu0.2 deb
|
||||
libexpat1 2.4.7-1ubuntu0.3 deb
|
||||
libext2fs2 1.46.5-2ubuntu1.1 deb
|
||||
libffi8 3.4.2-4 deb
|
||||
libfontconfig1 2.13.1-4.2ubuntu5 deb
|
||||
libfreetype6 2.11.1+dfsg-1ubuntu0.2 deb
|
||||
libgcc-s1 12.1.0-2ubuntu1~22.04 deb
|
||||
libgcc-s1 12.3.0-1ubuntu1~22.04 deb
|
||||
libgcrypt20 1.9.4-3ubuntu3 deb
|
||||
libglib2.0-0 2.72.4-0ubuntu2.2 deb
|
||||
libgmp10 2:6.2.1+dfsg-3ubuntu1 deb
|
||||
libgnutls30 3.7.3-4ubuntu1.2 deb
|
||||
libgnutls30 3.7.3-4ubuntu1.4 deb
|
||||
libgpg-error0 1.43-3 deb
|
||||
libgraphite2-3 1.3.14-1build2 deb
|
||||
libgssapi-krb5-2 1.19.2-2ubuntu0.2 deb
|
||||
libgssapi-krb5-2 1.19.2-2ubuntu0.3 deb
|
||||
libharfbuzz0b 2.7.4-1ubuntu3.1 deb
|
||||
libhogweed6 3.7.3-1build2 deb
|
||||
libidn2-0 2.3.2-2build1 deb
|
||||
libjpeg-turbo8 2.1.2-0ubuntu1 deb
|
||||
libjpeg8 8c-2ubuntu10 deb
|
||||
libjq1 1.6-2.1ubuntu3 deb
|
||||
libk5crypto3 1.19.2-2ubuntu0.2 deb
|
||||
libk5crypto3 1.19.2-2ubuntu0.3 deb
|
||||
libkeyutils1 1.6.1-2ubuntu3 deb
|
||||
libkrb5-3 1.19.2-2ubuntu0.2 deb
|
||||
libkrb5support0 1.19.2-2ubuntu0.2 deb
|
||||
libkrb5-3 1.19.2-2ubuntu0.3 deb
|
||||
libkrb5support0 1.19.2-2ubuntu0.3 deb
|
||||
libksba8 1.6.0-2ubuntu0.2 deb
|
||||
liblcms2-2 2.12~rc1-2build2 deb
|
||||
libldap-2.5-0 2.5.16+dfsg-0ubuntu0.22.04.2 deb
|
||||
libldap-common 2.5.16+dfsg-0ubuntu0.22.04.2 deb
|
||||
libldap-2.5-0 2.5.17+dfsg-0ubuntu0.22.04.1 deb
|
||||
libldap-common 2.5.17+dfsg-0ubuntu0.22.04.1 deb
|
||||
liblz4-1 1.9.3-2build2 deb
|
||||
liblzma5 5.2.5-2ubuntu1 deb
|
||||
libmd0 1.0.4-1build1 deb
|
||||
|
@ -206,16 +211,16 @@ libnspr4 2:4.32-3build1
|
|||
libnss3 2:3.68.2-0ubuntu1.2 deb
|
||||
libonig5 6.9.7.1-2build1 deb
|
||||
libp11-kit0 0.24.0-6build1 deb
|
||||
libpam-modules 1.4.0-11ubuntu2.3 deb
|
||||
libpam-modules-bin 1.4.0-11ubuntu2.3 deb
|
||||
libpam-runtime 1.4.0-11ubuntu2.3 deb
|
||||
libpam0g 1.4.0-11ubuntu2.3 deb
|
||||
libpam-modules 1.4.0-11ubuntu2.4 deb
|
||||
libpam-modules-bin 1.4.0-11ubuntu2.4 deb
|
||||
libpam-runtime 1.4.0-11ubuntu2.4 deb
|
||||
libpam0g 1.4.0-11ubuntu2.4 deb
|
||||
libpcre2-8-0 10.39-3ubuntu0.1 deb
|
||||
libpcre3 2:8.39-13ubuntu0.22.04.1 deb
|
||||
libpcsclite1 1.9.5-3ubuntu1 deb
|
||||
libpng16-16 1.6.37-3build5 deb
|
||||
libpopt0 1.18-3build1 deb
|
||||
libprocps8 2:3.3.17-6ubuntu2 deb
|
||||
libprocps8 2:3.3.17-6ubuntu2.1 deb
|
||||
libpsl5 0.21.0-1.2build2 deb
|
||||
libreadline8 8.1.2-1 deb
|
||||
librtmp1 2.4+20151223.gitfa8646d.1-2build4 deb
|
||||
|
@ -231,47 +236,49 @@ libsmartcols1 2.37.2-4ubuntu3
|
|||
libsqlite3-0 3.37.2-2ubuntu0.3 deb
|
||||
libss2 1.46.5-2ubuntu1.1 deb
|
||||
libssh-4 0.9.6-2ubuntu0.22.04.3 deb
|
||||
libssl3 3.0.2-0ubuntu1.10 deb
|
||||
libstdc++6 12.1.0-2ubuntu1~22.04 deb
|
||||
libsystemd0 249.11-0ubuntu3.9 deb
|
||||
libssl3 3.0.2-0ubuntu1.15 deb
|
||||
libstdc++6 12.3.0-1ubuntu1~22.04 deb
|
||||
libsystemd0 249.11-0ubuntu3.12 deb
|
||||
libtasn1-6 4.18.0-4build1 deb
|
||||
libtinfo6 6.3-2ubuntu0.1 deb
|
||||
libtirpc-common 1.3.2-2ubuntu0.1 deb
|
||||
libtirpc3 1.3.2-2ubuntu0.1 deb
|
||||
libudev1 249.11-0ubuntu3.9 deb
|
||||
libudev1 249.11-0ubuntu3.12 deb
|
||||
libunistring2 1.0-1 deb
|
||||
libuuid1 2.37.2-4ubuntu3 deb
|
||||
libxxhash0 0.8.1-1 deb
|
||||
libzstd1 1.4.8+dfsg-3build1 deb
|
||||
locales 2.35-0ubuntu3.6 deb
|
||||
log4j-api 2.17.2 java-archive
|
||||
log4j-to-slf4j 2.17.2 java-archive
|
||||
logback-access 1.2.11 java-archive
|
||||
logback-classic 1.2.11 java-archive
|
||||
logback-core 1.2.11 java-archive
|
||||
login 1:4.8.1-2ubuntu2.1 deb
|
||||
log4j-api 2.21.1 java-archive
|
||||
log4j-to-slf4j 2.21.1 java-archive
|
||||
logback-access 1.4.14 java-archive
|
||||
logback-classic 1.4.14 java-archive
|
||||
logback-core 1.4.14 java-archive
|
||||
login 1:4.8.1-2ubuntu2.2 deb
|
||||
logrotate 3.19.0-1ubuntu1.1 deb
|
||||
logsave 1.46.5-2ubuntu1.1 deb
|
||||
lsb-base 11.1.0ubuntu4 deb
|
||||
mawk 1.3.4.20200120-3 deb
|
||||
micrometer-commons 1.12.2 java-archive
|
||||
micrometer-observation 1.12.2 java-archive
|
||||
minimal-json 0.9.5 java-archive
|
||||
mongodb-driver-core 4.6.1 java-archive
|
||||
mongodb-driver-legacy 4.6.1 java-archive
|
||||
mongodb-driver-sync 4.6.1 java-archive
|
||||
mongodb-driver-core 4.11.1 java-archive
|
||||
mongodb-driver-legacy 4.11.1 java-archive
|
||||
mongodb-driver-sync 4.11.1 java-archive
|
||||
mount 2.37.2-4ubuntu3 deb
|
||||
ncurses-base 6.3-2ubuntu0.1 deb
|
||||
ncurses-bin 6.3-2ubuntu0.1 deb
|
||||
netcat 1.218-4ubuntu1 deb
|
||||
netcat-openbsd 1.218-4ubuntu1 deb
|
||||
openjdk-17-jre-headless 17.0.9+9-1~22.04 deb
|
||||
openjdk-17-jre-headless 17.0.10+7-1~22.04.1 deb
|
||||
openssh 1.0 java-archive
|
||||
openssl 3.0.2-0ubuntu1.14 deb
|
||||
openssl 3.0.2-0ubuntu1.15 deb
|
||||
org.eclipse.paho.client.mqttv3 1.1.0 java-archive
|
||||
owasp-java-html-sanitizer 20190503.1 java-archive
|
||||
passwd 1:4.8.1-2ubuntu2.1 deb
|
||||
perl-base 5.34.0-3ubuntu1.2 deb
|
||||
passwd 1:4.8.1-2ubuntu2.2 deb
|
||||
perl-base 5.34.0-3ubuntu1.3 deb
|
||||
pinentry-curses 1.1.1-1build2 deb
|
||||
procps 2:3.3.17-6ubuntu2 deb
|
||||
procps 2:3.3.17-6ubuntu2.1 deb
|
||||
proto-google-common-protos 1.12.0 java-archive
|
||||
proto-google-iam-v1 0.12.0 java-archive
|
||||
protobuf-java 3.6.0 java-archive
|
||||
|
@ -279,51 +286,50 @@ protobuf-java-util 3.6.0
|
|||
publicsuffix 20211207.1025-1 deb
|
||||
radclient4 4.0 java-archive
|
||||
reactive-streams 1.0.4 java-archive
|
||||
reactor-core 3.4.21 java-archive
|
||||
reactor-core 3.6.2 java-archive
|
||||
readline-common 8.1.2-1 deb
|
||||
resource-loader 2.0.2 java-archive
|
||||
sed 4.8-1ubuntu2 deb
|
||||
sensible-utils 0.0.17 deb
|
||||
slf4j-api 1.7.36 java-archive
|
||||
snakeyaml 1.30 java-archive
|
||||
snappy-java 1.1.8.4 java-archive
|
||||
spring-aop 5.3.22 java-archive
|
||||
spring-beans 5.3.22 java-archive
|
||||
spring-boot 2.7.2 java-archive
|
||||
spring-boot-autoconfigure 2.7.2 java-archive
|
||||
spring-boot-starter 2.7.2 java-archive
|
||||
spring-boot-starter-data-mongodb 2.7.2 java-archive
|
||||
spring-boot-starter-json 2.7.2 java-archive
|
||||
spring-boot-starter-logging 2.7.2 java-archive
|
||||
spring-boot-starter-tomcat 2.7.2 java-archive
|
||||
spring-boot-starter-validation 2.7.2 java-archive
|
||||
spring-boot-starter-web 2.7.2 java-archive
|
||||
spring-boot-starter-websocket 2.7.2 java-archive
|
||||
spring-context 5.3.22 java-archive
|
||||
spring-core 5.3.22 java-archive
|
||||
spring-data-commons 2.7.2 java-archive
|
||||
spring-data-mongodb 3.4.2 java-archive
|
||||
spring-expression 5.3.22 java-archive
|
||||
spring-messaging 5.3.22 java-archive
|
||||
spring-tx 5.3.22 java-archive
|
||||
spring-web 5.3.22 java-archive
|
||||
spring-webmvc 5.3.22 java-archive
|
||||
spring-websocket 5.3.22 java-archive
|
||||
sshj 0.27.0 java-archive
|
||||
slf4j-api 2.0.11 java-archive
|
||||
snakeyaml 2.2 java-archive
|
||||
snappy-java 1.1.10.5 java-archive
|
||||
spring-aop 6.1.3 java-archive
|
||||
spring-beans 6.1.3 java-archive
|
||||
spring-boot 3.2.2 java-archive
|
||||
spring-boot-autoconfigure 3.2.2 java-archive
|
||||
spring-boot-starter 3.2.2 java-archive
|
||||
spring-boot-starter-data-mongodb 3.2.2 java-archive
|
||||
spring-boot-starter-json 3.2.2 java-archive
|
||||
spring-boot-starter-logging 3.2.2 java-archive
|
||||
spring-boot-starter-tomcat 3.2.2 java-archive
|
||||
spring-boot-starter-validation 3.2.2 java-archive
|
||||
spring-boot-starter-web 3.2.2 java-archive
|
||||
spring-boot-starter-websocket 3.2.2 java-archive
|
||||
spring-context 6.1.3 java-archive
|
||||
spring-core 6.1.3 java-archive
|
||||
spring-data-commons 3.2.2 java-archive
|
||||
spring-data-mongodb 4.2.2 java-archive
|
||||
spring-expression 6.1.3 java-archive
|
||||
spring-messaging 6.1.3 java-archive
|
||||
spring-tx 6.1.3 java-archive
|
||||
spring-web 6.1.3 java-archive
|
||||
spring-webmvc 6.1.3 java-archive
|
||||
spring-websocket 6.1.3 java-archive
|
||||
sshj 0.37.0 java-archive
|
||||
sysvinit-utils 3.01-1ubuntu1 deb
|
||||
tar 1.34+dfsg-1ubuntu0.1.22.04.1 deb
|
||||
tomcat-annotations-api 9.0.65 java-archive
|
||||
tomcat-embed-core 9.0.65 java-archive
|
||||
tomcat-embed-el 9.0.65 java-archive
|
||||
tomcat-embed-jasper 9.0.65 java-archive
|
||||
tomcat-embed-programmatic 9.0.65 java-archive
|
||||
tomcat-embed-websocket 9.0.65 java-archive
|
||||
tar 1.34+dfsg-1ubuntu0.1.22.04.2 deb
|
||||
tomcat-annotations-api 10.1.18 java-archive
|
||||
tomcat-embed-core 10.1.18 java-archive
|
||||
tomcat-embed-el 10.1.18 java-archive
|
||||
tomcat-embed-jasper 10.1.18 java-archive
|
||||
tomcat-embed-websocket 10.1.18 java-archive
|
||||
txw2 2.3.0.1 java-archive
|
||||
tzdata 2023d-0ubuntu0.22.04 deb
|
||||
tzdata 2024a-0ubuntu0.22.04 deb
|
||||
ubuntu-keyring 2021.03.26 deb
|
||||
ucf 3.0043 deb
|
||||
unzip 6.0-26ubuntu3.2 deb
|
||||
urlrewritefilter 4.0.4 java-archive
|
||||
urlrewritefilter 4.0.4.1 java-archive
|
||||
usrmerge 25ubuntu2 deb
|
||||
util-linux 2.37.2-4ubuntu3 deb
|
||||
zlib1g 1:1.2.11.dfsg-2ubuntu9.2 deb
|
||||
|
|
|
@ -19,7 +19,7 @@ development_versions: false
|
|||
param_container_name: "{{ project_name }}"
|
||||
param_usage_include_vols: true
|
||||
param_volumes:
|
||||
- { vol_path: "/config", vol_host_path: "/path/to/data", desc: "All Unifi data stored here" }
|
||||
- { vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/data", desc: "Persistent config files" }
|
||||
|
||||
param_usage_include_ports: true
|
||||
param_ports:
|
||||
|
@ -61,7 +61,7 @@ app_setup_block: |
|
|||
|
||||
### Setting Up Your External Database
|
||||
|
||||
Formally only mongodb 3.6 through 4.4 are supported, however, it has been reported that newer versions will work. If you choose to use a newer version be aware that you will not be operating a supported configuration.
|
||||
Starting with version 8.1 of Unifi Network Application, mongodb 3.6 through 7.0 are supported.
|
||||
|
||||
**Make sure you pin your database image version and do not use `latest`, as mongodb does not support automatic upgrades between major versions.**
|
||||
|
||||
|
|
Loading…
Reference in a new issue