1
0

testing using docker to determine an external verison for build time

This commit is contained in:
thelamer
2019-04-28 17:50:55 -07:00
parent ce79a74de0
commit 9beff939fe
5 changed files with 14 additions and 10 deletions

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 \

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 \

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 \

14
Jenkinsfile vendored
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 // If this is a custom command to determine version use that command
stage("Set ENV os"){ stage("Set tag custom bash"){
steps{ steps{
script{ script{
env.EXT_RELEASE = env.PACKAGE_TAG env.EXT_RELEASE = sh(
env.RELEASE_LINK = 'none' 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'''

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