Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This document records the Jenkins builds set up for synapser dev/staging/validation/release and information about the workers that are used for the builds.

...

  • Run on every push
  • Make sure new changes do not break the build
  • Do not make change to Github repository
  • Do not push artifact to RAN (or staging RAN)
  • Item: 
    • http://jenkins.sagebase.org:8080/job/synapser_-dev/

Staging Build

  • Run on release candidate branches, ideally once; and occasionally, when a patch need to go in before release.
  • Build the artifacts
  • Update version, date, and docs, and push changes back to Github repository release candidate branch
    Note that this build requires pandoc, and libxml2 to be available on the build machine.
  • Push artifacts to staging RAN
  • Test that artifacts can be installed
  • Items:
    • http://jenkins.sagebase.org:8080/job/synapser-staging/
    • http://jenkins.sagebase.org:8080/job/synapser_staging_artifact/http://jenkins.sagebase.org:8080/job/synapser_staging_-staging-deploy/
    • http://jenkins.sagebase.org:8080/job/synapser_-check/

Release Build

  • Run when a version is released. 
  • Do not make change to Github repository
  • Push artifacts to RAN
  • Test that artifacts can be installed
  • Item:
    • http://jenkins.sagebase.org:8080/job/synapser_-prod_-deploy/
    • http://jenkins.sagebase.org:8080/job/synapser_-check/


Future Work

  • Append an item to run right after release build item, testing the deployment:
    • Download and install the artifacts on different platform and versions of R - DONE
    • Load the synapser library and verify that it works - DONE
  • Build docs - DONE

...

These workers are being used to run r packages on different platform. They could be disconnected for various reasons. This section lists the workers and instructions on how to access them. So that one can re-connect the worker when needed.

Windows

Location

URL: http://jenkins.sagebase.org:8080/computer/jenkins-windows-slave/

The EC2 machine is under the AWS account aws-it@sagebase.org
The password to the AWS account is on Belltown /work/platform/PasswordsAndCredentials/AWS-ITCredentials/passwords.txt

The machine name is jenkins-slave-windows-2017-Sep-29
As seen in the AWS console the address is 34.215.128.118
The region is US West (Oregon)

In May 2019, while working on

Jira Legacy
serverSystem JIRA
serverIdba6fb084-9827-3160-8067-8ac7470f78b2
keySYNR-1411
, we decided that:

  • Each build machine should only responsible for 1 version of R. (This decision was made because R v3.5 requires uninstall old versions of R.)
  • Build machine will has labels <mac/windows/linux>-RVERS-<version>. For example: mac-RVERS-3.6.

Windows

Location

The EC2 machine is under the AWS Synapse dev account (449435941126).

Access

  1. To log in to the Window machine, first get the password from AWS console:
    • Click Actions > Connect > Get Password
    • Enter the contents of  /work/platform/PasswordsAndCredentials/AWS-ITCredentials/awsit-keypair-west.pemUpload the .pem file to retrieve the password
  2. Install Microsoft Remotes Desktop client
  3. Chose New, and enter the following:
    • PC Name:  enter IP address
    • User name:  Administrator
    • Password:  As returned by AWS
You can now connect to the slaveworker machine.

Ubuntu

Location

Access

Here is the entry for your ~/.ssh/config
  • Host jenkins-linux-slave
  • user ubuntu
  • HostName ec2-52-10-253-155.us-west-2.compute.amazonaws.com
  • IdentityFile ~/.ssh/awsit-keypair-west.pem The EC2 machine is under the AWS Synapse dev account (449435941126).

    Access

    1. To log in to the ubuntu machine, get the instruction from AWS console. 
    2. Modify the instruction to use private IP address instead of public one.
    3. Run the ssh command in terminal.

    Mac

    Location

    URLURLs: 

    Access

    ssh

    Here is the entry for your ~/.ssh/config
    • Host macstadium
    • user administrator
    • HostName 207.254.40.252
    • password is on Belltown /work/platform/PasswordsAndCredentials/AWS-ITCredentials/passwords.txtlastpass

    From your Mac

    1. From Finder, choose Go > Connect to server ... on the menu bar
    2. Enter serve address: vnc://207.254.40.252
    3. Click Connect. It will prompt you for username and password:
      1. username: administrator
      2. password: on Belltown /work/platform/PasswordsAndCredentials/AWS-ITCredentials/passwords.txtlastpass

    Setup and Configuration

    To setup a window slave worker machine, follow instructions in: Setting up a Windows Jenkins "slave" for R package builds/wiki/spaces/IT/pages/176390212.

    To setup a Mac slave worker machine, follow instructions in: Setting up a Mac Jenkins "slave" for R package builds/wiki/spaces/IT/pages/230621187.