hello,
i’m helping my QA department to get their testing infra into the cloud.
for that we are utilizing aws, kubernetes, jenkins, saucelabs and zalenium (a selenium grid on steroids).
everything works okay so far - here is my jenkinsfile:
def label = "katalon-${UUID.randomUUID().toString()}"def gitUrl = "https://git.xxxxxxxxx.io/scm/ow-qa/ProjectFile.git"podTemplate(label: label, yaml: """apiVersion: v1kind: Podmetadata: labels: jenkins/kube-default: true app: jenkins component: agentspec: containers: - name: jnlp image: jenkins/jnlp-slave:3.27-1-alpine securityContext: privileged: true resources: limits: cpu: 1 memory: 2Gi requests: cpu: 1 memory: 2Gi imagePullPolicy: Always env: - name: POD_IP valueFrom: fieldRef: fieldPath: status.podIP - name: DOCKER_HOST value: tcp://localhost:2375 - name: dind image: docker:18-dind securityContext: privileged: true volumeMounts: - name: dind-storage mountPath: /var/lib/docker volumes: - name: dind-storage emptyDir: {}""" ) { node(label) { try { stage('prepare') { container("dind"){ deleteDir() } } stage('checkout') { container("dind"){ checkout([ $class: 'GitSCM', branches: [[name: 'refs/heads/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'katalon']], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'cin-ci-secret', url: gitUrl]] ]) sh''' cd katalon/ docker run -t --rm -v "$(pwd)":/katalon/katalon/source quay.io/xxxxxxxxx/katalonstudio \ katalon-execute.sh \ -browserType="Remote" -retry=0 -statusDelay=15 \ # i patched your docker image a little. -projectPath="/katalon/katalon/source/ProjectFile.prj" \ -testSuitePath="Test Suites/USA/TEST/Publisher/Publisher_RegressionTest" \ -remoteWebDriverUrl="https://zalenium.cicd.intra.xxxxxxxxxx.io/wd/hub" \ -remoteWebDriverType="Selenium" ''' } } } catch (err) { currentBuild.result = 'UNSTABLE' throw err } finally { // sendNotification() } }}
now i’m wondering - how would i pass in certain capabilities like:
- remote operating system
- remote browser name and version.
i’m quite new to katalon - hence the maybe newbie question.
any idea?
thanks in ahead,
tobias