Browse Source

testing using docker to determine an external verison for build time

pull/19/head
thelamer 1 year ago
parent
commit
9beff939fe
5 changed files with 14 additions and 10 deletions
  1. +2
    -1
      Dockerfile
  2. +1
    -1
      Dockerfile.aarch64
  3. +1
    -1
      Dockerfile.armhf
  4. +8
    -6
      Jenkinsfile
  5. +2
    -1
      jenkins-vars.yml

+ 2
- 1
Dockerfile View File

@ -2,6 +2,7 @@ FROM lsiobase/alpine:3.8
# set version label # set version label
ARG BUILD_DATE ARG BUILD_DATE
ARG VERSION
ARG OSCAM_VERSION ARG OSCAM_VERSION
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}" LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="saarg" LABEL maintainer="saarg"
@ -32,7 +33,7 @@ RUN \
if [ -z ${OSCAM_VERSION+x} ]; then \ if [ -z ${OSCAM_VERSION+x} ]; then \
OSCAM_VERSION=$(svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk ); \ OSCAM_VERSION=$(svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk ); \
fi && \ fi && \
svn checkout http://www.streamboard.tv/svn/oscam/trunk /tmp/oscam-svn && \
svn checkout http://www.streamboard.tv/svn/oscam/trunk@${OSCAM_VERSION} /tmp/oscam-svn && \
cd /tmp/oscam-svn && \ cd /tmp/oscam-svn && \
./config.sh \ ./config.sh \
--enable all \ --enable all \

+ 1
- 1
Dockerfile.aarch64 View File

@ -32,7 +32,7 @@ RUN \
if [ -z ${OSCAM_VERSION+x} ]; then \ if [ -z ${OSCAM_VERSION+x} ]; then \
OSCAM_VERSION=$(svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk ); \ OSCAM_VERSION=$(svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk ); \
fi && \ fi && \
svn checkout http://www.streamboard.tv/svn/oscam/trunk /tmp/oscam-svn && \
svn checkout http://www.streamboard.tv/svn/oscam/trunk@${OSCAM_VERSION} /tmp/oscam-svn && \
cd /tmp/oscam-svn && \ cd /tmp/oscam-svn && \
./config.sh \ ./config.sh \
--enable all \ --enable all \

+ 1
- 1
Dockerfile.armhf View File

@ -32,7 +32,7 @@ RUN \
if [ -z ${OSCAM_VERSION+x} ]; then \ if [ -z ${OSCAM_VERSION+x} ]; then \
OSCAM_VERSION=$(svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk ); \ OSCAM_VERSION=$(svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk ); \
fi && \ fi && \
svn checkout http://www.streamboard.tv/svn/oscam/trunk /tmp/oscam-svn && \
svn checkout http://www.streamboard.tv/svn/oscam/trunk@${OSCAM_VERSION} /tmp/oscam-svn && \
cd /tmp/oscam-svn && \ cd /tmp/oscam-svn && \
./config.sh \ ./config.sh \
--enable all \ --enable all \

+ 8
- 6
Jenkinsfile View File

@ -91,12 +91,14 @@ pipeline {
/* ######################## /* ########################
External Release Tagging External Release Tagging
######################## */ ######################## */
// If this is an os release set release type to none to indicate no external release
stage("Set ENV os"){
// If this is a custom command to determine version use that command
stage("Set tag custom bash"){
steps{ steps{
script{ script{
env.EXT_RELEASE = env.PACKAGE_TAG
env.RELEASE_LINK = 'none'
env.EXT_RELEASE = sh(
script: ''' docker run --rm alpine:3.9 sh -c 'apk add subversion > /dev/null 2>&1 && svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk' ''',
returnStdout: true).trim()
env.RELEASE_LINK = 'custom_command'
} }
} }
} }
@ -585,11 +587,11 @@ pipeline {
"tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' ''' "tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
echo "Pushing New release for Tag" echo "Pushing New release for Tag"
sh '''#! /bin/bash sh '''#! /bin/bash
echo "Updating base packages to ${PACKAGE_TAG}" > releasebody.json
echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json
echo '{"tag_name":"'${EXT_RELEASE_CLEAN}'-pkg-'${PACKAGE_TAG}'-ls'${LS_TAG_NUMBER}'",\ echo '{"tag_name":"'${EXT_RELEASE_CLEAN}'-pkg-'${PACKAGE_TAG}'-ls'${LS_TAG_NUMBER}'",\
"target_commitish": "master",\ "target_commitish": "master",\
"name": "'${EXT_RELEASE_CLEAN}'-pkg-'${PACKAGE_TAG}'-ls'${LS_TAG_NUMBER}'",\ "name": "'${EXT_RELEASE_CLEAN}'-pkg-'${PACKAGE_TAG}'-ls'${LS_TAG_NUMBER}'",\
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**OS Changes:**\\n\\n' > start
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**Remote Changes:**\\n\\n' > start
printf '","draft": false,"prerelease": false}' >> releasebody.json printf '","draft": false,"prerelease": false}' >> releasebody.json
paste -d'\\0' start releasebody.json > releasebody.json.done 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''' curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''

+ 2
- 1
jenkins-vars.yml View File

@ -2,7 +2,8 @@
# jenkins variables # jenkins variables
project_name: docker-oscam project_name: docker-oscam
external_type: os
external_type: na
custom_version_command: "docker run --rm alpine:3.9 sh -c 'apk add subversion > /dev/null 2>&1 && svn info --show-item revision http://www.streamboard.tv/svn/oscam/trunk'"
release_type: stable release_type: stable
release_tag: latest release_tag: latest
ls_branch: master ls_branch: master

Loading…
Cancel
Save