testing using docker to determine an external verison for build time
This commit is contained in:
@ -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 \
|
||||||
|
@ -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 \
|
||||||
|
@ -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
14
Jenkinsfile
vendored
@ -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'''
|
||||||
|
@ -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
|
||||||
|
Reference in New Issue
Block a user