diff --git a/.github/ISSUE_TEMPLATE/issue.bug.yml b/.github/ISSUE_TEMPLATE/issue.bug.yml
index 19f29de4..fc2de2ac 100644
--- a/.github/ISSUE_TEMPLATE/issue.bug.yml
+++ b/.github/ISSUE_TEMPLATE/issue.bug.yml
@@ -4,73 +4,13 @@ description: Create a report to help us improve
title: "[BUG]
"
labels: [Bug]
body:
- - type: checkboxes
+ - type: markdown
attributes:
- label: Is there an existing issue for this?
- description: Please search to see if an issue already exists for the bug you encountered.
- options:
- - label: I have searched the existing issues
- required: true
- - type: textarea
- attributes:
- label: Current Behavior
- description: Tell us what happens instead of the expected behavior.
- validations:
- required: true
- - type: textarea
- attributes:
- label: Expected Behavior
- description: Tell us what should happen.
- validations:
- required: false
- - type: textarea
- attributes:
- label: Steps To Reproduce
- description: Steps to reproduce the behavior.
- placeholder: |
- 1. In this environment...
- 2. With this config...
- 3. Run '...'
- 4. See error...
- validations:
- required: true
- - type: textarea
- attributes:
- label: Environment
- description: |
- examples:
- - **OS**: Ubuntu 20.04
- - **How docker service was installed**: distro's packagemanager
value: |
- - OS:
- - How docker service was installed:
- render: markdown
- validations:
- required: false
- - type: dropdown
- attributes:
- label: CPU architecture
- options:
- - x86-64
- - arm64
- validations:
- required: true
- - type: textarea
- attributes:
- label: Docker creation
- description: |
- Command used to create docker container
- Provide your docker create/run command or compose yaml snippet, or a screenshot of settings if using a gui to create the container
- render: bash
- validations:
- required: true
- - type: textarea
- attributes:
- description: |
- Provide a full docker log, output of "docker logs snipe-it"
- label: Container logs
- placeholder: |
- Output of `docker logs snipe-it`
- render: bash
- validations:
- required: true
+# DEPRECATION NOTICE
+This image is deprecated. We will not offer support for this image and it will not be updated.
+
+
+We recommend migrating to the official docker image from Grokability:
+https://snipe-it.readme.io/docs/docker
+
diff --git a/.github/ISSUE_TEMPLATE/issue.feature.yml b/.github/ISSUE_TEMPLATE/issue.feature.yml
index 099dcdb5..eb1761c5 100644
--- a/.github/ISSUE_TEMPLATE/issue.feature.yml
+++ b/.github/ISSUE_TEMPLATE/issue.feature.yml
@@ -4,28 +4,13 @@ description: Suggest an idea for this project
title: "[FEAT] "
labels: [enhancement]
body:
- - type: checkboxes
+ - type: markdown
attributes:
- label: Is this a new feature request?
- description: Please search to see if a feature request already exists.
- options:
- - label: I have searched the existing issues
- required: true
- - type: textarea
- attributes:
- label: Wanted change
- description: Tell us what you want to happen.
- validations:
- required: true
- - type: textarea
- attributes:
- label: Reason for change
- description: Justify your request, why do you want it, what is the benefit.
- validations:
- required: true
- - type: textarea
- attributes:
- label: Proposed code change
- description: Do you have a potential code change in mind?
- validations:
- required: false
+ value: |
+# DEPRECATION NOTICE
+This image is deprecated. We will not offer support for this image and it will not be updated.
+
+
+We recommend migrating to the official docker image from Grokability:
+https://snipe-it.readme.io/docs/docker
+
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index f5b39760..56ff5072 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,3 +1,10 @@
+# DEPRECATION NOTICE
+This image is deprecated. We will not offer support for this image and it will not be updated.
+
+
+We recommend migrating to the official docker image from Grokability:
+https://snipe-it.readme.io/docs/docker
+
[linuxserverurl]: https://linuxserver.io
diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml
index a55ddef7..23bb7a3d 100644
--- a/.github/workflows/greetings.yml
+++ b/.github/workflows/greetings.yml
@@ -8,6 +8,6 @@ jobs:
steps:
- uses: actions/first-interaction@v1
with:
- issue-message: 'Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.'
- pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-snipe-it/blob/master/.github/PULL_REQUEST_TEMPLATE.md)!'
+ issue-message: 'This image is deprecated. We will not offer support for this image and it will not be updated. The [README](https://github.com/linuxserver/docker-snipe-it/blob/master/README.md) may have additional information. Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.'
+ pr-message: 'This image is deprecated. We will not offer support for this image and it will not be updated. The [README](https://github.com/linuxserver/docker-snipe-it/blob/master/README.md) may have additional information. Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-snipe-it/blob/master/.github/PULL_REQUEST_TEMPLATE.md)!'
repo-token: ${{ secrets.GITHUB_TOKEN }}
diff --git a/Jenkinsfile b/Jenkinsfile
index b86e6360..4503b2f7 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -96,7 +96,7 @@ pipeline {
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
env.PULL_REQUEST = env.CHANGE_ID
- env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/call_issue_pr_tracker.yml ./.github/workflows/call_issues_cron.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml ./root/donate.txt'
+ env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./root/donate.txt ./root/etc/s6-overlay/s6-rc.d/init-deprecate/run ./root/etc/s6-overlay/s6-rc.d/init-deprecate/up ./root/etc/s6-overlay/s6-rc.d/init-deprecate/type ./root/etc/s6-overlay/s6-rc.d/init-deprecate/dependencies.d/init-config-end ./root/etc/s6-overlay/s6-rc.d/init-services/dependencies.d/init-deprecate ./root/etc/s6-overlay/s6-rc.d/user/contents.d/init-deprecate'
}
sh '''#! /bin/bash
echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" '''
@@ -337,6 +337,7 @@ pipeline {
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 .github/workflows/package_trigger.yml"
+ OLD_TEMPLATES="${OLD_TEMPLATES} $(echo .github/workflows/{external_trigger,external_trigger_scheduler,package_trigger_scheduler,call_issue_pr_tracker,call_issues_cron}.yml)"
for i in ${OLD_TEMPLATES}; do
if [[ -f "${i}" ]]; then
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
@@ -401,6 +402,10 @@ pipeline {
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
+ mkdir -p \
+ ${TEMPDIR}/repo/${LS_REPO}/root/etc/s6-overlay/s6-rc.d/init-deprecate/dependencies.d \
+ ${TEMPDIR}/repo/${LS_REPO}/root/etc/s6-overlay/s6-rc.d/init-services/dependencies.d \
+ ${TEMPDIR}/repo/${LS_REPO}/root/etc/s6-overlay/s6-rc.d/user/contents.d
cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/ || :
cp --parents readme-vars.yml ${TEMPDIR}/repo/${LS_REPO}/ || :
cd ${TEMPDIR}/repo/${LS_REPO}/
@@ -430,6 +435,19 @@ pipeline {
git add docs/images/docker-${CONTAINER_NAME}.md
echo "Updating docs repo"
git commit -m 'Bot Updating Documentation'
+ git mv docs/images/docker-${CONTAINER_NAME}.md docs/deprecated_images/docker-${CONTAINER_NAME}.md || :
+ if ! command -v yq || ! yq --help | grep -q 'mikefarah'; then
+ YQ_DL_VERSION=$(curl -fsX GET "https://api.github.com/repos/mikefarah/yq/releases/latest" | jq -r '. | .tag_name')
+ echo "No yq found, retrieving from upstream release version ${YQ_DL_VERSION}"
+ curl -fo /usr/local/bin/yq -L "https://github.com/mikefarah/yq/releases/download/${YQ_DL_VERSION}/yq_linux_amd64"
+ chmod +x /usr/local/bin/yq
+ fi
+ if ! yq -e '.plugins.[].redirects.redirect_maps.[] | select(. == "deprecated_images/docker-" + env(CONTAINER_NAME) + ".md")' mkdocs.yml >/dev/null 2>&1; then
+ echo "Updating mkdocs.yml with deprecation info"
+ yq -i '(.plugins.[] | select(.redirects)).redirects.redirect_maps |= . + {"images/docker-" + env(CONTAINER_NAME) + ".md" : "deprecated_images/docker-" + env(CONTAINER_NAME) + ".md"}' mkdocs.yml
+ git add mkdocs.yml
+ fi
+ git commit -m 'Bot Moving Deprecated 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" && \
@@ -451,6 +469,10 @@ pipeline {
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 "${CONTAINER_NAME}" >> ${TEMPDIR}/unraid/templates/unraid/ignore.list
+ git add unraid/ignore.list
+ fi
if grep -wq "^${CONTAINER_NAME}$" ${TEMPDIR}/unraid/templates/unraid/ignore.list && [[ -f ${TEMPDIR}/unraid/templates/unraid/deprecated/${CONTAINER_NAME}.xml ]]; then
echo "Image is on the ignore list, and already in the deprecation folder."
elif grep -wq "^${CONTAINER_NAME}$" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
@@ -930,6 +952,7 @@ pipeline {
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
fi
+ docker buildx imagetools create -t ${PUSHIMAGE}:latest ghcr.io/linuxserver/jenkins-builder:empty || true
done
'''
}
@@ -961,7 +984,7 @@ pipeline {
fi
done
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
- docker buildx imagetools create -t ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
+ docker buildx imagetools create -t ${MANIFESTIMAGE}:latest -t ${MANIFESTIMAGE}:amd64-latest -t ${MANIFESTIMAGE}:arm64v8-latest ghcr.io/linuxserver/jenkins-builder:empty || true
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
@@ -1116,6 +1139,26 @@ EOF
}
}
+ stage('Deprecate/Disable Future Builds') {
+ when {
+ branch "master"
+ environment name: 'CHANGE_ID', value: ''
+ environment name: 'EXIT_STATUS', value: ''
+ }
+ steps {
+ sh '''#! /bin/bash
+ TEMPDIR=$(mktemp -d)
+ 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 master
+ git rm Jenkinsfile
+ git commit -m 'Disabling future builds'
+ git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
+ git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master
+ rm -Rf ${TEMPDIR}'''
+ }
+ }
}
/* ######################
Send status to Discord
diff --git a/README.md b/README.md
index 308e0803..9e0f777c 100644
--- a/README.md
+++ b/README.md
@@ -26,6 +26,13 @@ Find us at:
* [GitHub](https://github.com/linuxserver) - view the source for all of our repositories.
* [Open Collective](https://opencollective.com/linuxserver) - please consider helping us by either donating or contributing to our budget
+# DEPRECATION NOTICE
+This image is deprecated. We will not offer support for this image and it will not be updated.
+
+
+We recommend migrating to the official docker image from Grokability:
+https://snipe-it.readme.io/docs/docker
+
# [linuxserver/snipe-it](https://github.com/linuxserver/docker-snipe-it)
[](https://scarf.sh)
diff --git a/readme-vars.yml b/readme-vars.yml
index 83375696..3913dd6d 100644
--- a/readme-vars.yml
+++ b/readme-vars.yml
@@ -2,6 +2,11 @@
# project information
project_name: snipe-it
+project_deprecation_status: true
+project_deprecation_message: |
+ We recommend migrating to the official docker image from Grokability:
+ https://snipe-it.readme.io/docs/docker
+
project_url: "https://github.com/grokability/snipe-it"
project_logo: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/snipe-it-logo.png"
project_blurb: "[{{ project_name|capitalize }}]({{ project_url }}) makes asset management easy. It was built by people solving real-world IT and asset management problems, and a solid UX has always been a top priority. Straightforward design and bulk actions mean getting things done faster."
diff --git a/root/etc/s6-overlay/s6-rc.d/init-deprecate/dependencies.d/init-config-end b/root/etc/s6-overlay/s6-rc.d/init-deprecate/dependencies.d/init-config-end
new file mode 100644
index 00000000..e69de29b
diff --git a/root/etc/s6-overlay/s6-rc.d/init-deprecate/run b/root/etc/s6-overlay/s6-rc.d/init-deprecate/run
new file mode 100755
index 00000000..88fa5143
--- /dev/null
+++ b/root/etc/s6-overlay/s6-rc.d/init-deprecate/run
@@ -0,0 +1,19 @@
+#!/usr/bin/with-contenv bash
+# shellcheck shell=bash
+
+echo '
+╔════════════════════════════════════════════════════╗
+╠════════════════════════════════════════════════════╣
+║ ║
+║ This image is deprecated. ║
+║ We will not offer support for this image ║
+║ and it will not be updated. ║
+║ ║
+╠════════════════════════════════════════════════════╣
+╚════════════════════════════════════════════════════╝
+
+We recommend migrating to the official docker image from Grokability:
+https://snipe-it.readme.io/docs/docker
+
+
+══════════════════════════════════════════════════════'
diff --git a/root/etc/s6-overlay/s6-rc.d/init-deprecate/type b/root/etc/s6-overlay/s6-rc.d/init-deprecate/type
new file mode 100644
index 00000000..bdd22a18
--- /dev/null
+++ b/root/etc/s6-overlay/s6-rc.d/init-deprecate/type
@@ -0,0 +1 @@
+oneshot
diff --git a/root/etc/s6-overlay/s6-rc.d/init-deprecate/up b/root/etc/s6-overlay/s6-rc.d/init-deprecate/up
new file mode 100644
index 00000000..e69de29b
diff --git a/root/etc/s6-overlay/s6-rc.d/init-services/dependencies.d/init-deprecate b/root/etc/s6-overlay/s6-rc.d/init-services/dependencies.d/init-deprecate
new file mode 100644
index 00000000..e69de29b
diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-deprecate b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-deprecate
new file mode 100644
index 00000000..e69de29b