[PATCH] osmo-ci[master]: jenkins: add osmo-gsm-tester_run-{prod,rnd}

2018-03-27 Thread lynxis lazus
Hello Pau Espin Pedrol, Neels Hofmeyr, Harald Welte,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/7021

to look at the new patch set (#6).

jenkins: add osmo-gsm-tester_run-{prod,rnd}

Both jobs doing the actual test run on the prod or rnd tester.

Change-Id: Ic1c4babc547f48402b0bcfaf38e2734e87e565f0
---
A jobs/osmo-gsm-tester-runner.yml
A jobs/osmo-gsm-tester_run-prod.sh
A jobs/osmo-gsm-tester_run-rnd.sh
3 files changed, 146 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/21/7021/6

diff --git a/jobs/osmo-gsm-tester-runner.yml b/jobs/osmo-gsm-tester-runner.yml
new file mode 100644
index 000..5221b9a
--- /dev/null
+++ b/jobs/osmo-gsm-tester-runner.yml
@@ -0,0 +1,118 @@
+## run jobs
+- project:
+name: osmo-gsm-testers-runner
+stage:
+  - prod
+  - rnd
+jobs:
+  - 'osmo-gsm-tester_run-{stage}'
+
+# The repo must be used seperate to workaround the bug "Can not expand 
OSMO_GSM_TESTER_BRANCH".
+# The safe-guard check to not use un-defined variables seems to be broken.
+- scm:
+name: osmo-gsm-tester-repo
+scm:
+  - git:
+  url: git://git.osmocom.org/osmo-gsm-tester
+  branches:
+- ${OSMO_GSM_TESTER_BRANCH}
+  wipe-workspace: false
+  skip-tag: true
+  basedir: osmo-gsm-tester
+
+- builder:
+name: copy_artifact
+builders:
+  - copyartifact:
+  project: '{repo}'
+  filter: '*.tgz, *.md5'
+  which-build: last-successful
+  stable: true
+
+# all artifact in one place
+- builder:
+name: copy_artifact_all
+builders:
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bsc
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-ggsn
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-hlr
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-mgw
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-msc
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-sgsn
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-trx
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-nitb
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-stp
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts-sysmo
+  - copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu-sysmo
+
+- defaults:
+name: runner
+description: 'Run an actual GSM hardware test using the binaries from the 
osmo-gsm-tester_build* jobs'
+node: 'osmo-gsm-tester-prod'
+project-type: freestyle
+properties:
+  - build-discarder:
+  num-to-keep: 60
+parameters:
+  - string:
+  name: "OSMO_GSM_TESTER_BRANCH"
+  default: "origin/master"
+  description: "Which branch/sha should be used for testing"
+  - string:
+  name: "OSMO_GSM_TESTER_OPTS"
+  default: ""
+  description: "pass additional command line options to 
osmo-gsm-tester.py, e.g. to select specific suites:scenarios. Default: leave 
empty."
+
+- job-template:
+name: 'osmo-gsm-tester_run-{stage}'
+defaults: runner
+node: 'osmo-gsm-tester-{stage}'
+triggers:
+  - timed: "H H/2 * * *"
+  - pollscm:
+  cron: "H/5 * * * *"
+  - reverse:
+jobs:
+- osmo-gsm-tester_build-osmo-bsc
+- osmo-gsm-tester_build-osmo-bts
+- osmo-gsm-tester_build-osmo-ggsn
+- osmo-gsm-tester_build-osmo-hlr
+- osmo-gsm-tester_build-osmo-mgw
+- osmo-gsm-tester_build-osmo-msc
+- osmo-gsm-tester_build-osmo-pcu
+- osmo-gsm-tester_build-osmo-sgsn
+- osmo-gsm-tester_build-osmo-trx
+- osmo-gsm-tester_build-osmo-nitb
+- osmo-gsm-tester_build-osmo-stp
+- osmo-gsm-tester_build-osmo-bts-sysmo
+- osmo-gsm-tester_build-osmo-pcu-sysmo
+builders:
+  - copy_artifact_all
+  - shell: !include-raw: osmo-gsm-tester_run-{stage}.sh
+publishers:
+  - archive:
+  artifacts: '*-run.tgz, *-bin.tgz'
+  default-excludes: false
+  - junit:
+  results: 'trial-*/last_run/trial-*.xml'
+  allow-empty-results: true
+  - email:
+  recipients: 'pes...@sysmocom.de'
+  notify-every-unstable-build: true
+scm:
+  - 'osmo-gsm-tester-repo'
diff --git a/jobs/osmo-gsm-tester_run-prod.sh b/jobs/osmo-gsm-tester_run-prod.sh
new file mode 100644
index 000..bcfe8ed
--- /dev/null
+++ b/jobs/osmo-gsm-tester_run-prod.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+set -e -x
+
+# On our hardware, we actually use the example configuration as-is.
+export OSMO_GSM_TESTER_CONF="$PWD/osmo-gs

[PATCH] osmo-ci[master]: jenkins: add osmo-gsm-tester_run-{prod,rnd}

2018-03-11 Thread lynxis lazus
Hello Pau Espin Pedrol, Neels Hofmeyr,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/7021

to look at the new patch set (#5).

jenkins: add osmo-gsm-tester_run-{prod,rnd}

Both jobs doing the actual test run on the prod or rnd tester.

Change-Id: Ic1c4babc547f48402b0bcfaf38e2734e87e565f0
---
A jobs/osmo-gsm-tester-runner.yml
A jobs/osmo-gsm-tester_run-prod.sh
A jobs/osmo-gsm-tester_run-rnd.sh
3 files changed, 150 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/21/7021/5

diff --git a/jobs/osmo-gsm-tester-runner.yml b/jobs/osmo-gsm-tester-runner.yml
new file mode 100644
index 000..97fd482
--- /dev/null
+++ b/jobs/osmo-gsm-tester-runner.yml
@@ -0,0 +1,118 @@
+## run jobs
+- project:
+name: osmo-gsm-testers-runner
+stage:
+  - prod
+  - rnd
+jobs:
+  - 'osmo-gsm-tester_run-{stage}'
+
+# The repo must be used seperate to workaround the bug "Can not expand 
OSMO_GSM_TESTER_BRANCH".
+# The safe-guard check to not use un-defined variables seems to be broken.
+- scm:
+name: osmo-gsm-tester-repo
+scm:
+  - git:
+  url: git://git.osmocom.org/osmo-gsm-tester
+  branches:
+- ${OSMO_GSM_TESTER_BRANCH}
+  wipe-workspace: false
+  skip-tag: true
+  basedir: osmo-gsm-tester
+
+- builder:
+name: osmo_gsm_copy_artifact
+builders:
+  - copyartifact:
+  project: '{repo}'
+  filter: '*.tgz, *.md5'
+  which-build: last-successful
+  stable: true
+
+# all artifact in one place
+- builder:
+name: osmo_gsm_copy_artifact_all
+builders:
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bsc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-ggsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-hlr
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-mgw
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-msc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-sgsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-trx
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-nitb
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-stp
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts-sysmo
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu-sysmo
+
+- defaults:
+name: runner
+description: 'Run an actual GSM hardware test using the binaries from the 
osmo-gsm-tester_build* jobs'
+node: 'osmo-gsm-tester-prod'
+project-type: freestyle
+properties:
+  - build-discarder:
+  num-to-keep: 60
+parameters:
+  - string:
+  name: "OSMO_GSM_TESTER_BRANCH"
+  default: "origin/master"
+  description: "Which branch/sha should be used for testing"
+  - string:
+  name: "OSMO_GSM_TESTER_OPTS"
+  default: ""
+  description: "pass additional command line options to 
osmo-gsm-tester.py, e.g. to select specific suites:scenarios. Default: leave 
empty."
+
+- job-template:
+name: 'osmo-gsm-tester_run-{stage}'
+defaults: runner
+node: 'osmo-gsm-tester-{stage}'
+triggers:
+  - timed: "H H/2 * * *"
+  - pollscm:
+  cron: "H/5 * * * *"
+  - reverse:
+jobs:
+- osmo-gsm-tester_build-osmo-bsc
+- osmo-gsm-tester_build-osmo-bts
+- osmo-gsm-tester_build-osmo-ggsn
+- osmo-gsm-tester_build-osmo-hlr
+- osmo-gsm-tester_build-osmo-mgw
+- osmo-gsm-tester_build-osmo-msc
+- osmo-gsm-tester_build-osmo-pcu
+- osmo-gsm-tester_build-osmo-sgsn
+- osmo-gsm-tester_build-osmo-trx
+- osmo-gsm-tester_build-osmo-nitb
+- osmo-gsm-tester_build-osmo-stp
+- osmo-gsm-tester_build-osmo-bts-sysmo
+- osmo-gsm-tester_build-osmo-pcu-sysmo
+builders:
+  - osmo_gsm_copy_artifact_all
+  - shell: !include-raw: osmo-gsm-tester_run-{stage}.sh
+publishers:
+  - archive:
+  artifacts: '*-run.tgz, *-bin.tgz'
+  default-excludes: false
+  - junit:
+  results: 'trial-*/last_run/trial-*.xml'
+  allow-empty-results: true
+  - email:
+  recipients: 'pes...@sysmocom.de'
+  notify-every-unstable-build: true
+scm:
+  - 'osmo-gsm-tester-repo'
diff --git a/jobs/osmo-gsm-tester_run-prod.sh b/jobs/osmo-gsm-tester_run-prod.sh
new file mode 100644
index 000..0764096
--- /dev/null
+++ b/jobs/osmo-gsm-tester_run-prod.sh
@@ -0,0 +1,21 @@
+#!/b

[PATCH] osmo-ci[master]: jenkins: add osmo-gsm-tester_run-{prod,rnd}

2018-03-06 Thread lynxis lazus
Hello Pau Espin Pedrol,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/7021

to look at the new patch set (#4).

jenkins: add osmo-gsm-tester_run-{prod,rnd}

Both jobs doing the actual test run on the prod or rnd tester.

Change-Id: Ic1c4babc547f48402b0bcfaf38e2734e87e565f0
---
M jobs/osmo-gsm-tester.yml
A jobs/osmo-gsm-tester_run-prod.sh
A jobs/osmo-gsm-tester_run-rnd.sh
3 files changed, 138 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/21/7021/4

diff --git a/jobs/osmo-gsm-tester.yml b/jobs/osmo-gsm-tester.yml
index e10dc23..7d6d7f9 100644
--- a/jobs/osmo-gsm-tester.yml
+++ b/jobs/osmo-gsm-tester.yml
@@ -1,6 +1,5 @@
 ---
 #TODO:
-#  - run
 #  - gerrit
 #  - manual-run
 #
@@ -111,3 +110,109 @@
   # hopefully the trigger will support lists in the future
   - trigger:
   project: 
'osmo-gsm-tester_build-osmo-bsc,osmo-gsm-tester_build-osmo-bts,osmo-gsm-tester_build-osmo-ggsn,osmo-gsm-tester_build-osmo-hlr,osmo-gsm-tester_build-osmo-mgw,osmo-gsm-tester_build-osmo-msc,osmo-gsm-tester_build-osmo-pcu,osmo-gsm-tester_build-osmo-sgsn,osmo-gsm-tester_build-osmo-trx,osmo-gsm-tester_build-osmo-nitb,osmo-gsm-tester_build-osmo-stp,osmo-gsm-tester_build-osmo-bts-sysmo,osmo-gsm-tester_build-osmo-pcu-sysmo'
+
+## run jobs
+- project:
+name: osmo-gsm-testers-runner
+stage:
+  - prod
+  - rnd
+jobs:
+  - 'osmo-gsm-tester_run-{stage}'
+
+- builder:
+name: osmo_gsm_copy_artifact
+builders:
+  - copyartifact:
+  project: '{repo}'
+  filter: '*.tgz, *.md5'
+  which-build: last-successful
+  stable: true
+
+# all artifact in one place
+- builder:
+name: osmo_gsm_copy_artifact_all
+builders:
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bsc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-ggsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-hlr
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-mgw
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-msc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-sgsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-trx
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-nitb
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-stp
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts-sysmo
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu-sysmo
+
+- defaults:
+name: runner
+description: 'Run an actual GSM hardware test using the binaries from the 
osmo-gsm-tester_build* jobs'
+node: 'osmo-gsm-tester-prod'
+project-type: freestyle
+properties:
+  - build-discarder:
+  num-to-keep: 60
+parameters:
+  - string:
+  name: "OSMO_GSM_TESTER_BRANCH"
+  default: "origin/master"
+  description: "Which branch/sha should be used for testing"
+  - string:
+  name: "OSMO_GSM_TESTER_OPTS"
+  default: ""
+  description: "pass additional command line options to 
osmo-gsm-tester.py, e.g. to select specific suites:scenarios. Default: leave 
empty."
+
+- job-template:
+name: 'osmo-gsm-tester_run-{stage}'
+defaults: runner
+node: 'osmo-gsm-tester-{stage}'
+triggers:
+  - timed: "H H/2 * * *"
+  - pollscm:
+  cron: "H/5 * * * *"
+  - reverse:
+jobs:
+- osmo-gsm-tester_build-osmo-bsc
+- osmo-gsm-tester_build-osmo-bts
+- osmo-gsm-tester_build-osmo-ggsn
+- osmo-gsm-tester_build-osmo-hlr
+- osmo-gsm-tester_build-osmo-mgw
+- osmo-gsm-tester_build-osmo-msc
+- osmo-gsm-tester_build-osmo-pcu
+- osmo-gsm-tester_build-osmo-sgsn
+- osmo-gsm-tester_build-osmo-trx
+- osmo-gsm-tester_build-osmo-nitb
+- osmo-gsm-tester_build-osmo-stp
+- osmo-gsm-tester_build-osmo-bts-sysmo
+- osmo-gsm-tester_build-osmo-pcu-sysmo
+builders:
+  - osmo_gsm_copy_artifact_all
+  - shell: !include-raw osmo-gsm-tester_run-{stage}.sh
+publishers:
+  - archive:
+  artifacts: '*-run.tgz, *-bin.tgz'
+  default-excludes: false
+  - junit:
+  results: 'trial-*/last_run/trial-*.xml'
+  allow-empty-results: true
+  - email:
+  recipients: 'pes...@sysmocom.de'
+  notify-every-unstable-build: true
+scm:
+  - 'osmo-gsm-tester-repo'
diff --git a/jobs/osmo-gsm-tester_run-prod.sh b/jobs/osmo-gsm-tester_run-prod.sh
new file mo

[PATCH] osmo-ci[master]: jenkins: add osmo-gsm-tester_run-{prod,rnd}

2018-03-06 Thread lynxis lazus
Hello Pau Espin Pedrol,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/7021

to look at the new patch set (#3).

jenkins: add osmo-gsm-tester_run-{prod,rnd}

Both jobs doing the actual test run on the prod or rnd tester.

Change-Id: Ic1c4babc547f48402b0bcfaf38e2734e87e565f0
---
M jobs/osmo-gsm-tester.yml
A jobs/osmo-gsm-tester_run-prod.sh
A jobs/osmo-gsm-tester_run-rnd.sh
3 files changed, 138 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/21/7021/3

diff --git a/jobs/osmo-gsm-tester.yml b/jobs/osmo-gsm-tester.yml
index e10dc23..42c2f83 100644
--- a/jobs/osmo-gsm-tester.yml
+++ b/jobs/osmo-gsm-tester.yml
@@ -1,6 +1,5 @@
 ---
 #TODO:
-#  - run
 #  - gerrit
 #  - manual-run
 #
@@ -111,3 +110,109 @@
   # hopefully the trigger will support lists in the future
   - trigger:
   project: 
'osmo-gsm-tester_build-osmo-bsc,osmo-gsm-tester_build-osmo-bts,osmo-gsm-tester_build-osmo-ggsn,osmo-gsm-tester_build-osmo-hlr,osmo-gsm-tester_build-osmo-mgw,osmo-gsm-tester_build-osmo-msc,osmo-gsm-tester_build-osmo-pcu,osmo-gsm-tester_build-osmo-sgsn,osmo-gsm-tester_build-osmo-trx,osmo-gsm-tester_build-osmo-nitb,osmo-gsm-tester_build-osmo-stp,osmo-gsm-tester_build-osmo-bts-sysmo,osmo-gsm-tester_build-osmo-pcu-sysmo'
+
+## run jobs
+- project:
+name: osmo-gsm-testers-runner
+stage:
+  - prod
+  - rnd:
+  node: 'osmo-gsm-tester-rnd'
+jobs:
+  - 'osmo-gsm-tester_run-{stage}'
+
+- builder:
+name: osmo_gsm_copy_artifact
+builders:
+  - copyartifact:
+  project: '{repo}'
+  filter: '*.tgz, *.md5'
+  which-build: last-successful
+  stable: true
+
+# all artifact in one place
+- builder:
+name: osmo_gsm_copy_artifact_all
+builders:
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bsc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-ggsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-hlr
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-mgw
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-msc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-sgsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-trx
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-nitb
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-stp
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts-sysmo
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu-sysmo
+
+- defaults:
+name: runner
+description: 'Run an actual GSM hardware test using the binaries from the 
osmo-gsm-tester_build* jobs'
+node: 'osmo-gsm-tester-prod'
+project-type: freestyle
+properties:
+  - build-discarder:
+  num-to-keep: 60
+parameters:
+  - string:
+  name: "OSMO_GSM_TESTER_BRANCH"
+  default: "origin/master"
+  description: "Which branch/sha should be used for testing"
+  - string:
+  name: "OSMO_GSM_TESTER_OPTS"
+  default: ""
+  description: "pass additional command line options to 
osmo-gsm-tester.py, e.g. to select specific suites:scenarios. Default: leave 
empty."
+
+- job-template:
+name: 'osmo-gsm-tester_run-{stage}'
+defaults: runner
+triggers:
+  - timed: "H H/2 * * *"
+  - pollscm:
+  cron: "H/5 * * * *"
+  - reverse:
+jobs:
+- osmo-gsm-tester_build-osmo-bsc
+- osmo-gsm-tester_build-osmo-bts
+- osmo-gsm-tester_build-osmo-ggsn
+- osmo-gsm-tester_build-osmo-hlr
+- osmo-gsm-tester_build-osmo-mgw
+- osmo-gsm-tester_build-osmo-msc
+- osmo-gsm-tester_build-osmo-pcu
+- osmo-gsm-tester_build-osmo-sgsn
+- osmo-gsm-tester_build-osmo-trx
+- osmo-gsm-tester_build-osmo-nitb
+- osmo-gsm-tester_build-osmo-stp
+- osmo-gsm-tester_build-osmo-bts-sysmo
+- osmo-gsm-tester_build-osmo-pcu-sysmo
+builders:
+  - osmo_gsm_copy_artifact_all
+  - shell: !include-raw osmo-gsm-tester_run-{stage}.sh
+publishers:
+  - archive:
+  artifacts: '*-run.tgz, *-bin.tgz'
+  default-excludes: false
+  - junit:
+  results: 'trial-*/last_run/trial-*.xml'
+  allow-empty-results: true
+  - email:
+  recipients: 'pes...@sysmocom.de'
+  notify-every-unstable-build: true
+scm:
+  - 'osmo-gsm-tester-repo'
diff --git a/jobs/osmo-gsm-tester_run-prod.sh b/jobs/osmo-gsm-tester_run-prod.sh
new file

[PATCH] osmo-ci[master]: jenkins: add osmo-gsm-tester_run-{prod,rnd}

2018-03-05 Thread lynxis lazus

jenkins: add osmo-gsm-tester_run-{prod,rnd}

Both jobs doing the actual test run on the prod or rnd tester.

Change-Id: Ic1c4babc547f48402b0bcfaf38e2734e87e565f0
---
M jobs/osmo-gsm-tester.yml
A jobs/osmo-gsm-tester_run-prod.sh
A jobs/osmo-gsm-tester_run-rnd.sh
3 files changed, 150 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/21/7021/2

diff --git a/jobs/osmo-gsm-tester.yml b/jobs/osmo-gsm-tester.yml
index 034e137..41a7ec1 100644
--- a/jobs/osmo-gsm-tester.yml
+++ b/jobs/osmo-gsm-tester.yml
@@ -1,6 +1,5 @@
 ---
 #TODO:
-#  - run
 #  - trigger
 #  - gerrit
 #  - manual-run
@@ -102,6 +101,18 @@
   skip-tag: true
   basedir: osmo-gsm-tester
 
+- scm:
+name: osmo-gsm-tester-repo-clean
+scm:
+  - git:
+  url: git://git.osmocom.org/osmo-gsm-tester
+  branches:
+- ${OSMO_GSM_TESTER_BRANCH}
+  wipe-workspace: false
+  skip-tag: true
+  basedir: osmo-gsm-tester
+  clean:  true
+
 ## trigger build job
 - job:
 name: 'osmo-gsm-tester_build-trigger-all'
@@ -112,3 +123,109 @@
   # hopefully the trigger will support lists in the future
   - trigger:
   project: 
'osmo-gsm-tester_build-osmo-bsc,osmo-gsm-tester_build-osmo-bts,osmo-gsm-tester_build-osmo-ggsn,osmo-gsm-tester_build-osmo-hlr,osmo-gsm-tester_build-osmo-mgw,osmo-gsm-tester_build-osmo-msc,osmo-gsm-tester_build-osmo-pcu,osmo-gsm-tester_build-osmo-sgsn,osmo-gsm-tester_build-osmo-trx,osmo-gsm-tester_build-osmo-nitb,osmo-gsm-tester_build-osmo-stp,osmo-gsm-tester_build-osmo-bts-sysmo,osmo-gsm-tester_build-osmo-pcu-sysmo'
+
+## run jobs
+- project:
+name: osmo-gsm-testers-runner
+stage:
+  - prod
+  - rnd:
+  node: 'osmo-gsm-tester-rnd'
+jobs:
+  - 'osmo-gsm-tester_run-{stage}'
+
+- builder:
+name: osmo_gsm_copy_artifact
+builders:
+  - copyartifact:
+  project: '{repo}'
+  filter: '*.tgz, *.md5'
+  which-build: last-successful
+  stable: true
+
+# all artifact in one place
+- builder:
+name: osmo_gsm_copy_artifact_all
+builders:
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bsc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-ggsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-hlr
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-mgw
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-msc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-sgsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-trx
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-nitb
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-stp
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts-sysmo
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu-sysmo
+
+- defaults:
+name: runner
+description: 'Run an actual GSM hardware test using the binaries from the 
osmo-gsm-tester_build* jobs'
+node: 'osmo-gsm-tester-prod'
+project-type: freestyle
+properties:
+  - build-discarder:
+  num-to-keep: 60
+parameters:
+  - string:
+  name: "OSMO_GSM_TESTER_BRANCH"
+  default: "origin/master"
+  description: "Which branch/sha should be used for testing"
+  - string:
+  name: "OSMO_GSM_TESTER_OPTS"
+  default: ""
+  description: "pass additional command line options to 
osmo-gsm-tester.py, e.g. to select specific suites:scenarios. Default: leave 
empty."
+
+- job-template:
+name: 'osmo-gsm-tester_run-{stage}'
+defaults: runner
+triggers:
+  - timed: "H H/2 * * *"
+  - pollscm:
+  cron: "H/5 * * * *"
+  - reverse:
+jobs:
+- osmo-gsm-tester_build-osmo-bsc
+- osmo-gsm-tester_build-osmo-bts
+- osmo-gsm-tester_build-osmo-ggsn
+- osmo-gsm-tester_build-osmo-hlr
+- osmo-gsm-tester_build-osmo-mgw
+- osmo-gsm-tester_build-osmo-msc
+- osmo-gsm-tester_build-osmo-pcu
+- osmo-gsm-tester_build-osmo-sgsn
+- osmo-gsm-tester_build-osmo-trx
+- osmo-gsm-tester_build-osmo-nitb
+- osmo-gsm-tester_build-osmo-stp
+- osmo-gsm-tester_build-osmo-bts-sysmo
+- osmo-gsm-tester_build-osmo-pcu-sysmo
+builders:
+  - osmo_gsm_copy_artifact_all
+  - shell: !include-raw osmo-gsm-tester_run-{stage}.sh
+publishers:
+  - archive:
+  artifacts: '*-run.tgz, *-bin.tgz'
+  default-excludes: false
+  -

[PATCH] osmo-ci[master]: jenkins: add osmo-gsm-tester_run-{prod,rnd}

2018-03-01 Thread lynxis lazus

Review at  https://gerrit.osmocom.org/7021

jenkins: add osmo-gsm-tester_run-{prod,rnd}

Both jobs doing the actual test run on the prod or rnd tester.

Change-Id: Ic1c4babc547f48402b0bcfaf38e2734e87e565f0
---
M jobs/osmo-gsm-tester.yml
A jobs/osmo-gsm-tester_run-prod.sh
A jobs/osmo-gsm-tester_run-rnd.sh
3 files changed, 151 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/21/7021/1

diff --git a/jobs/osmo-gsm-tester.yml b/jobs/osmo-gsm-tester.yml
index f25299d..0380f13 100644
--- a/jobs/osmo-gsm-tester.yml
+++ b/jobs/osmo-gsm-tester.yml
@@ -1,6 +1,5 @@
 ---
 #TODO:
-#  - run
 #  - trigger
 #  - gerrit
 #  - manual-run
@@ -107,6 +106,18 @@
   skip-tag: true
   basedir: osmo-gsm-tester
 
+- scm:
+name: osmo-gsm-tester-repo-clean
+scm:
+  - git:
+  url: git://git.osmocom.org/osmo-gsm-tester
+  branches:
+- ${OSMO_GSM_TESTER_BRANCH}
+  wipe-workspace: false
+  skip-tag: true
+  basedir: osmo-gsm-tester
+  clean:  true
+
 ## trigger build job
 - job:
 name: 'osmo-gsm-tester_build-trigger-all'
@@ -117,3 +128,110 @@
   # hopefully the trigger will support lists in the future
   - trigger:
   project: 
'osmo-gsm-tester_build-osmo-bsc,osmo-gsm-tester_build-osmo-bts,osmo-gsm-tester_build-osmo-ggsn,osmo-gsm-tester_build-osmo-hlr,osmo-gsm-tester_build-osmo-mgw,osmo-gsm-tester_build-osmo-msc,osmo-gsm-tester_build-osmo-pcu,osmo-gsm-tester_build-osmo-sgsn,osmo-gsm-tester_build-osmo-trx,osmo-gsm-tester_build-osmo-nitb,osmo-gsm-tester_build-osmo-stp,osmo-gsm-tester_build-osmo-bts-sysmo,osmo-gsm-tester_build-osmo-pcu-sysmo'
+
+## run jobs
+- project:
+name: osmo-gsm-testers-runners
+stage:
+  - prod
+  - rnd:
+  node: 'osmo-gsm-tester-rnd'
+jobs:
+  - 'osmo-gsm-tester_run-{stage}'
+
+- builder:
+name: osmo_gsm_copy_artifact
+builders:
+  - copyartifact:
+  project: '{repo}'
+  filter: '*.tgz, *.md5'
+  which-build: last-successful
+  stable: true
+
+# all artefact in one place
+- builder:
+name: osmo_gsm_copy_artifact_all
+builders:
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bsc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-ggsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-hlr
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-mgw
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-msc
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-sgsn
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-trx
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-nitb
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-stp
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-bts-sysmo
+  - osmo_gsm_copy_artifact:
+ repo: osmo-gsm-tester_build-osmo-pcu-sysmo
+
+- defaults:
+name: runners
+description: 'Run an actual GSM hardware test using the binaries from the 
osmo-gsm-tester_build* jobs'
+node: 'osmo-gsm-tester-prod'
+project-type: freestyle
+properties:
+  - build-discarder:
+  num-to-keep: 60
+parameters:
+  - string:
+  name: "OSMO_GSM_TESTER_BRANCH"
+  default: "origin/master"
+  description: "Which branch/sha should be used for testing"
+  - string:
+  name: "OSMO_GSM_TESTER_OPTS"
+  default: ""
+  description: "pass additional command line options to 
osmo-gsm-tester.py, e.g. to select specific suites:scenarios. Default: leave 
empty."
+
+- job-template:
+name: 'osmo-gsm-tester_run-{stage}'
+defaults: runners
+triggers:
+  - timed: "H H/2 * * *"
+  - pollscm:
+  cron: "H/5 * * * *"
+  - reverse:
+jobs:
+- osmo-gsm-tester_build-osmo-bsc
+- osmo-gsm-tester_build-osmo-bts
+- osmo-gsm-tester_build-osmo-ggsn
+- osmo-gsm-tester_build-osmo-hlr
+- osmo-gsm-tester_build-osmo-mgw
+- osmo-gsm-tester_build-osmo-msc
+- osmo-gsm-tester_build-osmo-pcu
+- osmo-gsm-tester_build-osmo-sgsn
+- osmo-gsm-tester_build-osmo-trx
+- osmo-gsm-tester_build-osmo-nitb
+- osmo-gsm-tester_build-osmo-stp
+- osmo-gsm-tester_build-osmo-bts-sysmo
+- osmo-gsm-tester_build-osmo-pcu-sysmo
+builders:
+  - osmo_gsm_copy_artifact_all
+  - shell: !include-raw osmo-gsm-tester_run-{stage}.sh
+publishers:
+  - archive:
+  artifacts: '*-run.tgz, *-bin.t