Skip to content

Commit

Permalink
update a lot
Browse files Browse the repository at this point in the history
  • Loading branch information
zackliu committed Aug 9, 2016
1 parent 404c7aa commit 4bb6e91
Show file tree
Hide file tree
Showing 15 changed files with 669 additions and 88 deletions.
4 changes: 2 additions & 2 deletions Template_Docs.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,7 @@ def execute(settings) {
release: 'minor',
hotfix: 'patch'
]
def gitToken = decode("adfasd")
def gitToken = decode(TOKEN)
branches.each {
def ciJobName = folderName + '/' + it + '_ci'
def opbuildJobName = folderName + '/' + it + '_opbuild'
Expand All @@ -253,7 +253,7 @@ def execute(settings) {
'npm install',
'npm update',
'npm run opst init',
"npm run opst -- deployLocTheme -B ${it}"
"npm run opst -- deployLocTheme -B docker_${it}"
]
def bumpVersionSteps = [
'npm version ' + bumpMapping[it],
Expand Down
31 changes: 0 additions & 31 deletions e2e/Dockerfile

This file was deleted.

4 changes: 0 additions & 4 deletions e2e/conf.js

This file was deleted.

23 changes: 0 additions & 23 deletions e2e/entry_point.sh

This file was deleted.

10 changes: 0 additions & 10 deletions e2e/supervisord.conf

This file was deleted.

17 changes: 0 additions & 17 deletions e2e/todo-spec.js

This file was deleted.

2 changes: 1 addition & 1 deletion jenkins/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ RUN echo "jenkins ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
EXPOSE 8080
EXPOSE 50000

ENV JAVA_OPTS="$JAVA_OPTS -Dhudson.Main.development=true -Djenkins.install.runSetupWizard=false -Djava.awt.headless=true -Dhudson.model.DirectoryBrowserSupport.CSP=\"sandbox allow-scripts allow-popups; style-src 'unsafe-inline' *;script-src 'unsafe-inline' *;\""
ENV JAVA_OPTS="$JAVA_OPTS -Dhudson.Main.development=true -Djenkins.install.runSetupWizard=false -Djava.awt.headless=true -Dhudson.model.DirectoryBrowserSupport.CSP=\"\""

#COPY installplugins.groovy /var/jenkins_home/HOOK.groovy
COPY . /var/jenkins_home/
Expand Down
1 change: 1 addition & 0 deletions mono/.npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
//mseng.pkgs.visualstudio.com/_packaging/WebComponents/npm/:_authToken=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Im9PdmN6NU1fN3AtSGpJS2xGWHo5M3VfVjBabyJ9.eyJuYW1laWQiOiJiMzQzYjA4OS1iOTc5LTQ1NDMtOTI5Mi0yMDZlM2NjYzAxNzQiLCJzY3AiOiJhcHBfdG9rZW4iLCJhdWkiOiI1N2RkYTE3ZC04ZGU0LTRjNjAtYmM2My0wMjExMDgwYTk4YmMiLCJzaWQiOiJlZGYxMjgyZC05NWQ1LTQ5NzgtYjRjMy1jYzJiOWI4NTUzYzMiLCJpc3MiOiJhcHAudnNzcHMudmlzdWFsc3R1ZGlvLmNvbSIsImF1ZCI6ImFwcC52c3Nwcy52aXN1YWxzdHVkaW8uY29tfHZzbzo3NTRmODY5MS0xOWNlLTQ3YTItYTFlOC1lYmVhYjFlNjc5NTUiLCJuYmYiOjE0NzAwMTk3ODQsImV4cCI6MTQ3Nzc5NTc4Mn0.vxEGCNAzbg-1Kw_7WUBO2mNH_KigNXlvy6B5N6aNU99PLHHhMjqPkHMxAZgxGDB3Q8H-Rl6awdJeLROTQFvR0G5y3QVORIqYqJPtbqTMuow0MeSfpprM8cGBDajBvc4s8ss83I-FbWJ6A_ZqRMNPwsevXLgis2KA0jTk3BoZiZ-WXMmp1hR5CjK9w2JPjXQhrTFNe15HJIIqZkJtZATZVxZcedx4gBjdujT7V1W-XBFICAHzLj3IVePoo9QMj1UI7MqgojZlo4XNGIqmeyRZGmGwXm39e7Dw1qWT6EldYhtJlG97pbnYxTjA1xpUPdE2oHjhB5wWr4HYxuexmq8n4w
75 changes: 75 additions & 0 deletions mono/buildTasks.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
'use strict';

Object.defineProperty(exports, "__esModule", {
value: true
});
exports.buildBuildTasks = buildBuildTasks;
exports.buildDevelopTasks = buildDevelopTasks;
exports.buildServeTasks = buildServeTasks;
exports.buildDeployThemeTasks = buildDeployThemeTasks;
exports.buildDeployLocThemeTasks = buildDeployLocThemeTasks;
exports.buildDeploySiteTasks = buildDeploySiteTasks;
function mergeTasks(taskList, plugins, command) {
var result = taskList;
var starts = plugins.get(command, 'start');
if (starts && starts.length && starts.length > 0) {
result = starts.concat(taskList);
}
var ends = plugins.get(command, 'end');
if (ends && ends.length && ends.length > 0) {
result = taskList.concat(ends);
}

return result;
}

function buildBuildTasks(project) {
var taskList = void 0;
if (project.passthrough) {
taskList = ['clean', 'sprites', 'buildLib', 'postcss', 'webpack'];
} else {
taskList = ['clean', 'sprites', 'postcss', 'webpack'];
if (project.stage === 'build') {
taskList.push('copy:docpacker');
//taskList.push('version');
}
}

if (project.config.uxservice) {
taskList.push('buildUXService');
}

return mergeTasks(taskList, project.plugins, 'build');
}

function buildDevelopTasks(project) {
var taskList = buildBuildTasks(project);
taskList = taskList.concat(['docfx', 'docpacker', 'watch']);
return mergeTasks(taskList, project.plugins, 'develop');
}

function buildServeTasks(project) {
var taskList = buildBuildTasks(project);
taskList = taskList.concat(['docfx', 'docpacker', 'watch']);
return mergeTasks(taskList, project.plugins, 'serve');
}

function buildDeployThemeTasks(project) {
project.stage = 'build';
var taskList = buildBuildTasks(project);
taskList = taskList.concat(['deployTheme']);
return mergeTasks(taskList, project.plugins, 'deployTheme');
}

function buildDeployLocThemeTasks(project) {
project.stage = 'build';
var taskList = buildBuildTasks(project);
taskList = taskList.concat(['deployLocTheme']);
return mergeTasks(taskList, project.plugins, 'deployLocTheme');
}

function buildDeploySiteTasks(project) {
var taskList = buildBuildTasks(project);
taskList = taskList.concat(['docfx', 'docpacker', 'copy:hosting-config', 'deploySite']);
return mergeTasks(taskList, project.plugins, 'deploySite');
}
122 changes: 122 additions & 0 deletions mono/dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
FROM mono:4.4.0

# install node 6.3
# gpg keys listed at https://github.com/nodejs/node
RUN set -ex \
&& for key in \
9554F04D7259F04124DE6B476D5A82AC7E37093B \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
0034A06D9D9B0064CE8ADF6BF1747F4AD2306D93 \
FD3A5288F042B6850C66B31F09FE44734EB7990E \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
B9AE9905FFD7803F25714661B63B535A4C206CA9 \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
; do \
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key"; \
done

ENV NPM_CONFIG_LOGLEVEL info
ENV NODE_VERSION 6.3.1

RUN curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-x64.tar.xz" \
&& curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v$NODE_VERSION-linux-x64.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
&& tar -xJf "node-v$NODE_VERSION-linux-x64.tar.xz" -C /usr/local --strip-components=1 \
&& rm "node-v$NODE_VERSION-linux-x64.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt

#install git supervisor sudo openjdk openssh
RUN apt-get update && \
apt-get install -y supervisor \
sudo \
openjdk-7-jre \
openssh-server \
wget \
curl
RUN echo "deb http://http.debian.net/debian wheezy-backports main" >/etc/apt/sources.list.d/wheezy-backports.list && \
apt-get update && \
apt-get -t wheezy-backports install -y git

#install gulp
RUN npm install -g gulp gulp-cli bower

RUN /usr/bin/ssh-keygen -A
RUN sed -ri 's/^session\s+required\s+pam_loginuid.so$/session optional pam_loginuid.so/' /etc/pam.d/sshd

#add user for jenkins slave
RUN useradd jenkins
RUN mkdir -p /home/jenkins
RUN chown -R jenkins /home/jenkins
RUN chgrp -R jenkins /home/jenkins
RUN echo "jenkins:jenkins" | chpasswd
RUN echo "root:root" | chpasswd
RUN mkdir -p /var/run/sshd

#use sudo without password
RUN echo "jenkins ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

#RUN npm config set //mseng.pkgs.visualstudio.com/_packaging/WebComponents/npm/:_authToken=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Im9PdmN6NU1fN3AtSGpJS2xGWHo5M3VfVjBabyJ9.eyJuYW1laWQiOiJiMzQzYjA4OS1iOTc5LTQ1NDMtOTI5Mi0yMDZlM2NjYzAxNzQiLCJzY3AiOiJhcHBfdG9rZW4iLCJhdWkiOiI1N2RkYTE3ZC04ZGU0LTRjNjAtYmM2My0wMjExMDgwYTk4YmMiLCJzaWQiOiJlZGYxMjgyZC05NWQ1LTQ5NzgtYjRjMy1jYzJiOWI4NTUzYzMiLCJpc3MiOiJhcHAudnNzcHMudmlzdWFsc3R1ZGlvLmNvbSIsImF1ZCI6ImFwcC52c3Nwcy52aXN1YWxzdHVkaW8uY29tfHZzbzo3NTRmODY5MS0xOWNlLTQ3YTItYTFlOC1lYmVhYjFlNjc5NTUiLCJuYmYiOjE0NzAwMTk3ODQsImV4cCI6MTQ3Nzc5NTc4Mn0.vxEGCNAzbg-1Kw_7WUBO2mNH_KigNXlvy6B5N6aNU99PLHHhMjqPkHMxAZgxGDB3Q8H-Rl6awdJeLROTQFvR0G5y3QVORIqYqJPtbqTMuow0MeSfpprM8cGBDajBvc4s8ss83I-FbWJ6A_ZqRMNPwsevXLgis2KA0jTk3BoZiZ-WXMmp1hR5CjK9w2JPjXQhrTFNe15HJIIqZkJtZATZVxZcedx4gBjdujT7V1W-XBFICAHzLj3IVePoo9QMj1UI7MqgojZlo4XNGIqmeyRZGmGwXm39e7Dw1qWT6EldYhtJlG97pbnYxTjA1xpUPdE2oHjhB5wWr4HYxuexmq8n4w

USER jenkins
WORKDIR /home/jenkins

RUN npm config set //mseng.pkgs.visualstudio.com/_packaging/WebComponents/npm/:_authToken=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Im9PdmN6NU1fN3AtSGpJS2xGWHo5M3VfVjBabyJ9.eyJuYW1laWQiOiJiMzQzYjA4OS1iOTc5LTQ1NDMtOTI5Mi0yMDZlM2NjYzAxNzQiLCJzY3AiOiJhcHBfdG9rZW4iLCJhdWkiOiI1N2RkYTE3ZC04ZGU0LTRjNjAtYmM2My0wMjExMDgwYTk4YmMiLCJzaWQiOiJlZGYxMjgyZC05NWQ1LTQ5NzgtYjRjMy1jYzJiOWI4NTUzYzMiLCJpc3MiOiJhcHAudnNzcHMudmlzdWFsc3R1ZGlvLmNvbSIsImF1ZCI6ImFwcC52c3Nwcy52aXN1YWxzdHVkaW8uY29tfHZzbzo3NTRmODY5MS0xOWNlLTQ3YTItYTFlOC1lYmVhYjFlNjc5NTUiLCJuYmYiOjE0NzAwMTk3ODQsImV4cCI6MTQ3Nzc5NTc4Mn0.vxEGCNAzbg-1Kw_7WUBO2mNH_KigNXlvy6B5N6aNU99PLHHhMjqPkHMxAZgxGDB3Q8H-Rl6awdJeLROTQFvR0G5y3QVORIqYqJPtbqTMuow0MeSfpprM8cGBDajBvc4s8ss83I-FbWJ6A_ZqRMNPwsevXLgis2KA0jTk3BoZiZ-WXMmp1hR5CjK9w2JPjXQhrTFNe15HJIIqZkJtZATZVxZcedx4gBjdujT7V1W-XBFICAHzLj3IVePoo9QMj1UI7MqgojZlo4XNGIqmeyRZGmGwXm39e7Dw1qWT6EldYhtJlG97pbnYxTjA1xpUPdE2oHjhB5wWr4HYxuexmq8n4w

RUN mkdir -p ~/.ssh
COPY id_rsa /home/jenkins/.ssh/
COPY known_hosts /home/jenkins/.ssh/
RUN sudo chown jenkins /home/jenkins/.ssh/id_rsa
RUN sudo chgrp jenkins /home/jenkins/.ssh/id_rsa
RUN sudo chown jenkins /home/jenkins/.ssh/known_hosts
RUN sudo chgrp jenkins /home/jenkins/.ssh/known_hosts
RUN chmod 600 /home/jenkins/.ssh/id_rsa
RUN git config --global user.email "[email protected]"
RUN git config --global user.name "andxu"

USER root

EXPOSE 22

#ssh -T [email protected]:Microsoft/templates.docs.msft.git
#COPY ./Template.MSDN ./Template.MSDN

#############################################
#if you want to change from ps1 to sh, you should use the command line below
#############################################

#sudo chmod -R 777 .
#sed -i 's/powershell -ExecutionPolicy Bypass .\/setup-op.ps1/\/bin\/bash .\/setup-op.sh/g' package.json
#sed -i 's/.\/nuget.exe/\/nuget.exe/g' ./node_modules/gulp-nuget-restore/index.js

######################################
#using opst and Template.MSDN
######################################

#delete task version
#sudo sed -i -e '34d' /usr/local/lib/node_modules/opst/lib/buildTasks.js

#use opst in linux
#node /usr/local/lib/node_modules/opst/bin/opst.js ...

###############################
#using Template.Docs
################################
#utils/project.js line110: \\*liquid -> /*liquid
# line18: .\\ -> /
#cp project.js node_modules/opst/lib/utils/project.js
#cp helper.js node_modules/opst/lib/utils/helper.js
#cp LiquidPlugin.js node_modules/opst/lib/loaders/LiquidPlugin.js
#cp buildTasks.js node_modules/opst/lib/buildTasks.js
#mv src/themes/yml/Rest.html.yml src/themes/yml/rest.html.yml
#cp setup-op.sh temp/tools/setup-op.sh #
#NOTE npm install -g bower

####Command Line######
#npm install || npm install
#npm update
#cp project.js node_modules/opst/lib/utils/project.js
#cp LiquidPlugin.js node_modules/opst/lib/loaders/LiquidPlugin.js
#cp buildTasks.js node_modules/opst/lib/buildTasks.js
#mv src/themes/yml/Rest.html.yml src/themes/yml/rest.html.yml
#node node_modules/opst/bin/opst.js deployTheme -B docker_develop
Loading

0 comments on commit 4bb6e91

Please sign in to comment.