mirror of
				https://github.com/linuxserver/docker-heimdall.git
				synced 2025-11-04 15:02:35 +09:00 
			
		
		
		
	Bot Updating Templated Files
This commit is contained in:
		
							
								
								
									
										33
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										33
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
								
							@@ -41,7 +41,7 @@ pipeline {
 | 
				
			|||||||
            script: '''curl -s https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases | jq -r 'first(.[] | select(.prerelease == true)) | .tag_name' ''',
 | 
					            script: '''curl -s https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases | jq -r 'first(.[] | select(.prerelease == true)) | .tag_name' ''',
 | 
				
			||||||
            returnStdout: true).trim()
 | 
					            returnStdout: true).trim()
 | 
				
			||||||
          env.LS_RELEASE_NOTES = sh(
 | 
					          env.LS_RELEASE_NOTES = sh(
 | 
				
			||||||
            script: '''git log -1 --pretty=%B | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
 | 
					            script: '''cat readme-vars.yml | awk -F \\" '/date: "[0-9][0-9].[0-9][0-9].[0-9][0-9]:/ {print $4;exit;}' | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
 | 
				
			||||||
            returnStdout: true).trim()
 | 
					            returnStdout: true).trim()
 | 
				
			||||||
          env.GITHUB_DATE = sh(
 | 
					          env.GITHUB_DATE = sh(
 | 
				
			||||||
            script: '''date '+%Y-%m-%dT%H:%M:%S%:z' ''',
 | 
					            script: '''date '+%Y-%m-%dT%H:%M:%S%:z' ''',
 | 
				
			||||||
@@ -292,6 +292,9 @@ pipeline {
 | 
				
			|||||||
                           --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
					                           --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
				
			||||||
              sh "docker tag ${IMAGE}:arm32v6-${META_TAG} lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
					              sh "docker tag ${IMAGE}:arm32v6-${META_TAG} lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
				
			||||||
              sh "docker push lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
					              sh "docker push lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
				
			||||||
 | 
					              sh '''docker rmi \
 | 
				
			||||||
 | 
					                    ${IMAGE}:arm32v6-${META_TAG} \
 | 
				
			||||||
 | 
					                    lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} '''
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@@ -318,6 +321,9 @@ pipeline {
 | 
				
			|||||||
                           --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
					                           --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
				
			||||||
              sh "docker tag ${IMAGE}:arm64v8-${META_TAG} lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
					              sh "docker tag ${IMAGE}:arm64v8-${META_TAG} lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
				
			||||||
              sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
					              sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
				
			||||||
 | 
					              sh '''docker rmi \
 | 
				
			||||||
 | 
					                    ${IMAGE}:arm64v8-${META_TAG} \
 | 
				
			||||||
 | 
					                    lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} '''
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@@ -479,6 +485,10 @@ pipeline {
 | 
				
			|||||||
          sh "docker tag ${IMAGE}:${META_TAG} ${IMAGE}:development"
 | 
					          sh "docker tag ${IMAGE}:${META_TAG} ${IMAGE}:development"
 | 
				
			||||||
          sh "docker push ${IMAGE}:development"
 | 
					          sh "docker push ${IMAGE}:development"
 | 
				
			||||||
          sh "docker push ${IMAGE}:${META_TAG}"
 | 
					          sh "docker push ${IMAGE}:${META_TAG}"
 | 
				
			||||||
 | 
					          sh '''docker rmi \
 | 
				
			||||||
 | 
					                ${IMAGE}:${META_TAG} \
 | 
				
			||||||
 | 
					                ${IMAGE}:development '''
 | 
				
			||||||
 | 
					                
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -526,6 +536,15 @@ pipeline {
 | 
				
			|||||||
          sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8"
 | 
					          sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8"
 | 
				
			||||||
          sh "docker manifest push --purge ${IMAGE}:development"
 | 
					          sh "docker manifest push --purge ${IMAGE}:development"
 | 
				
			||||||
          sh "docker manifest push --purge ${IMAGE}:${META_TAG}"
 | 
					          sh "docker manifest push --purge ${IMAGE}:${META_TAG}"
 | 
				
			||||||
 | 
					          sh '''docker rmi \
 | 
				
			||||||
 | 
					                ${IMAGE}:amd64-${META_TAG} \
 | 
				
			||||||
 | 
					                ${IMAGE}:amd64-development \
 | 
				
			||||||
 | 
					                ${IMAGE}:arm32v6-${META_TAG} \
 | 
				
			||||||
 | 
					                ${IMAGE}:arm32v6-development \
 | 
				
			||||||
 | 
					                ${IMAGE}:arm64v8-${META_TAG} \
 | 
				
			||||||
 | 
					                ${IMAGE}:arm64v8-development \
 | 
				
			||||||
 | 
					                lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} \
 | 
				
			||||||
 | 
					                lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} '''
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -586,6 +605,18 @@ pipeline {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					    // If this is a Pull request send the CI link as a comment on it
 | 
				
			||||||
 | 
					    stage('Pull Request Comment') {
 | 
				
			||||||
 | 
					      when {
 | 
				
			||||||
 | 
					        not {environment name: 'CHANGE_ID', value: ''}
 | 
				
			||||||
 | 
					        environment name: 'CI', value: 'true'
 | 
				
			||||||
 | 
					        environment name: 'EXIT_STATUS', value: ''
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					      steps {
 | 
				
			||||||
 | 
					        sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/issues/${PULL_REQUEST}/comments \
 | 
				
			||||||
 | 
					        -d '{"body": "I am a bot, here are the test results for this PR '${CI_URL}'"}' '''
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  /* ######################
 | 
					  /* ######################
 | 
				
			||||||
     Send status to Discord
 | 
					     Send status to Discord
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										40
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								README.md
									
									
									
									
									
								
							@@ -14,12 +14,6 @@ Find us at:
 | 
				
			|||||||
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
 | 
					* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
 | 
				
			||||||
* [Podcast](https://anchor.fm/linuxserverio) - on hiatus. Coming back soon (late 2018).
 | 
					* [Podcast](https://anchor.fm/linuxserverio) - on hiatus. Coming back soon (late 2018).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# PSA: Changes are happening
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
From August 2018 onwards, Linuxserver are in the midst of switching to a new CI platform which will enable us to build and release multiple architectures under a single repo. To this end, existing images for `arm64` and `armhf` builds are being deprecated. They are replaced by a manifest file in each container which automatically pulls the correct image for your architecture. You'll also be able to pull based on a specific architecture tag.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
TLDR: Multi-arch support is changing from multiple repos to one repo per container image.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# [linuxserver/heimdall](https://github.com/linuxserver/docker-heimdall)
 | 
					# [linuxserver/heimdall](https://github.com/linuxserver/docker-heimdall)
 | 
				
			||||||
[](https://discord.gg/YWrKVTn)
 | 
					[](https://discord.gg/YWrKVTn)
 | 
				
			||||||
[](https://microbadger.com/images/linuxserver/heimdall "Get your own version badge on microbadger.com")
 | 
					[](https://microbadger.com/images/linuxserver/heimdall "Get your own version badge on microbadger.com")
 | 
				
			||||||
@@ -37,7 +31,7 @@ Why not use it as your browser start page? It even has the ability to include a
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## Supported Architectures
 | 
					## Supported Architectures
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list). 
 | 
					Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/). 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Simply pulling `linuxserver/heimdall` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
 | 
					Simply pulling `linuxserver/heimdall` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -59,8 +53,8 @@ Here are some example snippets to help you get started creating a container.
 | 
				
			|||||||
```
 | 
					```
 | 
				
			||||||
docker create \
 | 
					docker create \
 | 
				
			||||||
  --name=heimdall \
 | 
					  --name=heimdall \
 | 
				
			||||||
  -e PUID=1001 \
 | 
					  -e PUID=1000 \
 | 
				
			||||||
  -e PGID=1001 \
 | 
					  -e PGID=1000 \
 | 
				
			||||||
  -e TZ=Europe/London \
 | 
					  -e TZ=Europe/London \
 | 
				
			||||||
  -p 80:80 \
 | 
					  -p 80:80 \
 | 
				
			||||||
  -p 443:443 \
 | 
					  -p 443:443 \
 | 
				
			||||||
@@ -87,15 +81,14 @@ services:
 | 
				
			|||||||
    image: linuxserver/heimdall
 | 
					    image: linuxserver/heimdall
 | 
				
			||||||
    container_name: heimdall
 | 
					    container_name: heimdall
 | 
				
			||||||
    environment:
 | 
					    environment:
 | 
				
			||||||
      - PUID=1001
 | 
					      - PUID=1000
 | 
				
			||||||
      - PGID=1001
 | 
					      - PGID=1000
 | 
				
			||||||
      - TZ=Europe/London
 | 
					      - TZ=Europe/London
 | 
				
			||||||
    volumes:
 | 
					    volumes:
 | 
				
			||||||
      - </path/to/appdata/config>:/config
 | 
					      - </path/to/appdata/config>:/config
 | 
				
			||||||
    ports:
 | 
					    ports:
 | 
				
			||||||
      - 80:80
 | 
					      - 80:80
 | 
				
			||||||
      - 443:443
 | 
					      - 443:443
 | 
				
			||||||
    mem_limit: 4096m
 | 
					 | 
				
			||||||
    restart: unless-stopped
 | 
					    restart: unless-stopped
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -107,8 +100,8 @@ Container images are configured using parameters passed at runtime (such as thos
 | 
				
			|||||||
| :----: | --- |
 | 
					| :----: | --- |
 | 
				
			||||||
| `-p 80` | http gui |
 | 
					| `-p 80` | http gui |
 | 
				
			||||||
| `-p 443` | https gui |
 | 
					| `-p 443` | https gui |
 | 
				
			||||||
| `-e PUID=1001` | for UserID - see below for explanation |
 | 
					| `-e PUID=1000` | for UserID - see below for explanation |
 | 
				
			||||||
| `-e PGID=1001` | for GroupID - see below for explanation |
 | 
					| `-e PGID=1000` | for GroupID - see below for explanation |
 | 
				
			||||||
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London |
 | 
					| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London |
 | 
				
			||||||
| `-v /config` | Contains all relevant configuration files. |
 | 
					| `-v /config` | Contains all relevant configuration files. |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -118,11 +111,11 @@ When using volumes (`-v` flags) permissions issues can arise between the host OS
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Ensure any volume directories on the host are owned by the same user you specify and any permissions issues will vanish like magic.
 | 
					Ensure any volume directories on the host are owned by the same user you specify and any permissions issues will vanish like magic.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
In this instance `PUID=1001` and `PGID=1001`, to find yours use `id user` as below:
 | 
					In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as below:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
  $ id username
 | 
					  $ id username
 | 
				
			||||||
    uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup)
 | 
					    uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -161,9 +154,20 @@ Below are the instructions for updating containers:
 | 
				
			|||||||
* Start the new container: `docker start heimdall`
 | 
					* Start the new container: `docker start heimdall`
 | 
				
			||||||
* You can also remove the old dangling images: `docker image prune`
 | 
					* You can also remove the old dangling images: `docker image prune`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Via Taisun auto-updater (especially useful if you don't remember the original parameters)
 | 
				
			||||||
 | 
					* Pull the latest image at its tag and replace it with the same env variables in one shot:
 | 
				
			||||||
 | 
					  ```
 | 
				
			||||||
 | 
					  docker run --rm \
 | 
				
			||||||
 | 
					  -v /var/run/docker.sock:/var/run/docker.sock taisun/updater \
 | 
				
			||||||
 | 
					  --oneshot heimdall
 | 
				
			||||||
 | 
					  ```
 | 
				
			||||||
 | 
					* You can also remove the old dangling images: `docker image prune`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Via Docker Compose
 | 
					### Via Docker Compose
 | 
				
			||||||
* Update the image: `docker-compose pull linuxserver/heimdall`
 | 
					* Update all images: `docker-compose pull`
 | 
				
			||||||
* Let compose update containers as necessary: `docker-compose up -d`
 | 
					  * or update a single image: `docker-compose pull heimdall`
 | 
				
			||||||
 | 
					* Let compose update all containers as necessary: `docker-compose up -d`
 | 
				
			||||||
 | 
					  * or update a single container: `docker-compose up -d heimdall`
 | 
				
			||||||
* You can also remove the old dangling images: `docker image prune`
 | 
					* You can also remove the old dangling images: `docker image prune`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Versions
 | 
					## Versions
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user