Changeset 28108


Ignore:
Timestamp:
02/28/24 11:13:00 (13 months ago)
Author:
jdquinn
Message:

CHG: Modifying binaries packaging for macOS to allow for Intel and Silicon variants

Location:
issm/trunk-jpl/packagers/mac
Files:
3 added
1 deleted
1 edited
7 moved

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/packagers/mac/intel/commit_for_signing-issm-mac-intel-binaries-matlab.sh

    r28107 r28108  
    22
    33################################################################################
    4 # Commits ISSM distributable package for macOS with MATLAB API to repository
    5 # for signing. This repository is polled by a project running on a JPL
    6 # Cybersecurity Jenkins server and performs the actual signing and
     4# Commits ISSM distributable package with MATLAB API for macOS running on Intel
     5# to repository for signing. This repository is polled by a project running on
     6# a JPL Cybersecurity Jenkins server and performs the actual signing and
    77# notarization.
    88#
     
    2424#
    2525# See also:
    26 # - packagers/mac/complete-issm-mac-binaries-matlab.sh
    27 # - packagers/mac/sign-issm-mac-binaries-matlab.sh
     26# - packagers/mac/intel/complete-issm-mac-intel-binaries-matlab.sh
     27# - packagers/mac/intel/sign-issm-mac-intel-binaries-matlab.sh
    2828#
    2929# TODO:
     
    5757SIGNING_CHECK_PERIOD=60 # in seconds
    5858SIGNING_LOCK_FILE="signing.lock"
    59 UNSIGNED_REPO_COPY="./unsigned"
    60 UNSIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/matlab/unsigned"
    6159
    6260## Functions
  • issm/trunk-jpl/packagers/mac/intel/commit_for_signing-issm-mac-intel-binaries-python-3.sh

    r28107 r28108  
    22
    33################################################################################
    4 # Commits ISSM distributable package for macOS with Python 3 API to repository
    5 # for signing. This repository is polled by a project running on a JPL
    6 # Cybersecurity Jenkins server and performs the actual signing and
    7 # notarization.
     4# Commits ISSM distributable package with Python 3 API for macOS running on
     5# Intel to repository for signing. This repository is polled by a project
     6# running on a JPL Cybersecurity Jenkins server and performs the actual signing
     7# and notarization.
    88#
    99# Options:
     
    2424#
    2525# See also:
    26 # - packagers/mac/complete-issm-mac-binaries-python-3.sh
    27 # - packagers/mac/sign-issm-mac-binaries-python-3.sh
     26# - packagers/mac/intel/complete-issm-mac-intel-binaries-python-3.sh
     27# - packagers/mac/intel/sign-issm-mac-intel-binaries-python-3.sh
    2828#
    2929# TODO:
     
    5757SIGNING_CHECK_PERIOD=60 # in seconds
    5858SIGNING_LOCK_FILE="signing.lock"
    59 UNSIGNED_REPO_COPY="./unsigned"
    60 UNSIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/python/3/unsigned"
    6159
    6260## Functions
  • issm/trunk-jpl/packagers/mac/intel/complete-issm-mac-intel-binaries-matlab.sh

    r28107 r28108  
    22
    33################################################################################
    4 # Wrapper script to build, package, send for signing, and transfer to ISSM Web
    5 # site ISSM distributable package for macOS with MATLAB API.
     4# Wrapper script to build, package, send for signing, and transfer to ISSM
     5# website ISSM distributable package with MATLAB API for macOS running on
     6# Intel.
    67#
    78# Normally, we would put this directly into the project configuration under
     
    3536#       Jenkins server. Debugging may be performed locally by running,
    3637#
    37 #               packagers/mac/sign-issm-mac-binaries-matlab.sh
     38#               packagers/mac/intel/sign-issm-mac-intel-binaries-matlab.sh
    3839#
    3940#       with "AD_IDENTITY", "AD_USERNAME", and "ASC_PROVIDER" hardcoded to Apple
     
    5758## Constants
    5859#
    59 PKG="ISSM-macOS-MATLAB" # Name of directory to copy distributable files to
     60PKG="ISSM-macOS-Intel-MATLAB" # Name of directory to copy distributable files to
     61REPO_BASE_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/matlab"
    6062SIGNED_REPO_COPY="./signed"
    61 SIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/matlab/signed"
     63SIGNED_REPO_URL="${REPO_BASE_URL}/signed"
     64UNSIGNED_REPO_COPY="./unsigned"
     65UNSIGNED_REPO_URL="${REPO_BASE_URL}/unsigned"
    6266
    6367COMPRESSED_PKG="${PKG}.zip"
     
    6973export SIGNED_REPO_COPY
    7074export SIGNED_REPO_URL
     75export UNSIGNED_REPO_COPY
     76export UNSIGNED_REPO_URL
    7177
    7278## Parse options
     
    108114# Package
    109115if [ ${package} -eq 1 ]; then
    110         ./packagers/mac/package-issm-mac-binaries-matlab.sh $1
     116        ./packagers/mac/intel/package-issm-mac-intel-binaries-matlab.sh $1
    111117
    112118        if [ $? -ne 0 ]; then
     
    120126# Commit for signing
    121127if [ ${sign} -eq 1 ]; then
    122         ./packagers/mac/commit_for_signing-issm-mac-binaries-matlab.sh $1
     128        ./packagers/mac/intel/commit_for_signing-issm-mac-intel-binaries-matlab.sh $1
    123129
    124130        if [ $? -ne 0 ]; then
  • issm/trunk-jpl/packagers/mac/intel/package-issm-mac-intel-binaries-matlab.sh

    r28107 r28108  
    22
    33################################################################################
    4 # Packages and tests ISSM distributable package for macOS with MATLAB API.
     4# Packages and tests ISSM distributable package with MATLAB API for macOS
     5# running on Intel.
    56#
    67# Options:
     
    1617#
    1718# See also:
    18 # - packagers/mac/complete-issm-mac-binaries-matlab.sh
    19 # - packagers/mac/sign-issm-mac-binaries-matlab.sh
     19# - packagers/mac/intel/complete-issm-mac-intel-binaries-matlab.sh
     20# - packagers/mac/intel/sign-issm-mac-intel-binaries-matlab.sh
    2021################################################################################
    2122
     
    4142#
    4243MATLAB_NROPTIONS="'benchmark','all','exclude',[125,126,129,234,235,418,420,435,444,445,701,702,703,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1201,1202,1203,1204,1205,1206,1207,1208,1301,1302,1303,1304,1401,1402,1601,1602,2002,2003,2004,2006,2007,2008,2010,2011,2012,2013,2020,2021,2051,2052,2053,2084,2085,2090,2091,2092,2101,2424,2425,3001:3300,3480,3481,4001:4100]" # NOTE: Combination of test suites from basic, Dakota, and Solid Earth builds, with tests that require a restart and those that require the JVM excluded
    43 MATLAB_PATH="/Applications/MATLAB_R2022b.app"
     44MATLAB_PATH="/Applications/MATLAB_R2023b.app"
    4445
    4546## Environment
  • issm/trunk-jpl/packagers/mac/intel/package-issm-mac-intel-binaries-python-3.sh

    r28107 r28108  
    22
    33################################################################################
    4 # Packages and tests ISSM distributable package for macOS with Python 3 API.
     4# Packages and tests ISSM distributable package with Python 3 API for macOS
     5# running on Intel.
    56#
    67# Options:
     
    1617#
    1718# See also:
    18 # - packagers/mac/complete-issm-mac-binaries-python-3.sh
    19 # - packagers/mac/sign-issm-mac-binaries-python-3.sh
     19# - packagers/mac/intel/complete-issm-mac-intel-binaries-python-3.sh
     20# - packagers/mac/intel/sign-issm-mac-intel-binaries-python-3.sh
    2021################################################################################
    2122
  • issm/trunk-jpl/packagers/mac/intel/sign-issm-mac-intel-binaries-matlab.sh

    r28107 r28108  
    55# Cybersecurity server for signing macOS applications. Polls SCM of the
    66# Subversion repository hosted at
    7 # https://issm.ess.uci.edu/svn/issm-binaries/mac/matlab/unsigned to trigger new
    8 # builds.
    9 #
    10 # In order to replicate the required Jenkins project configuration:
    11 # - First, navigate to 'Manage Jenkins' -> 'Manage Plugins' and install the
     7# https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/matlab/unsigned to
     8# trigger new builds.
     9#
     10# In order to replicate the required Jenkins project configuration,
     11# - first, navigate to 'Manage Jenkins' -> 'Manage Plugins' and install the
    1212#       'Credentials Bindings Plugin' if it is not already installed.
    13 # - Contact one of the members of the ISSM development team for credentials for
     13# - contact one of the members of the ISSM development team for credentials for
    1414#       the ISSM binaries repository (mention that the credentials are stored in
    1515#       ISSM-Infrastructure.pdf).
    16 # - Navigate to 'Manage Jenkins' -> 'Manage Credentials' -> <domain> ->
     16# - navigate to 'Manage Jenkins' -> 'Manage Credentials' -> <domain> ->
    1717#       'Add Credentials' and enter the credentials from above.
    18 # - From the 'Dashboard', select 'New Item' -> 'Freestyle project'.
    19 # - Under 'Source Code Management', select 'Subversion'.
    20 #               - The 'Repository URL' text field should be set to
    21 #               "https://issm.ess.uci.edu/svn/issm-binaries/mac/matlab/unsigned".
    22 #               - The 'Credentials' select menu should be set to the new credentials
     18# - from the 'Dashboard', select 'New Item' -> 'Freestyle project'.
     19# - under 'Source Code Management', select 'Subversion',
     20#               - the 'Repository URL' text field should be set to
     21#
     22#               https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/matlab/unsigned
     23#
     24#               - the 'Credentials' select menu should be set to the new credentials
    2325#               created previously.
    24 #               - The 'Local module directory' text field should be set to the same
     26#               - the 'Local module directory' text field should be set to the same
    2527#               value as the constant UNSIGNED_REPO_COPY (set below to './unsigned').
    26 # - Under 'Build Triggers', check the box for 'Poll SCM' and set the
     28# - under 'Build Triggers', check the box for 'Poll SCM' and set the
    2729#       'Schedule' text area to "H/5 * * * *".
    28 # - Under 'Build Environment', check the box for 'Use secret text(s) or
     30# - under 'Build Environment', check the box for 'Use secret text(s) or
    2931#       file(s)', then under 'Bindings' click the 'Add...' button and select
    30 #       'Username and password (separated)'.
    31 #               - Set 'Username Variable' to "ISSM_BINARIES_USER".
    32 #               - Set 'Password Variable' to "ISSM_BINARIES_PASS".
    33 # - Under 'Credentials', select the same, new credentials that created
     32#       'Username and password (separated)',
     33#               - set 'Username Variable' to "ISSM_BINARIES_USER".
     34#               - set 'Password Variable' to "ISSM_BINARIES_PASS".
     35# - under 'Credentials', select the same, new credentials that created
    3436#       previously.
    35 # - The contents of this script can be copied/pasted directly into the ‘Build'
     37# - the contents of this script can be copied/pasted directly into the ‘Build'
    3638#       -> 'Execute Shell' -> ‘Command' textarea of the project configuration (or
    3739#       you can simply store the script on disk and call it from there).
    38 # - Make sure to click the 'Save' button.
     40# - make sure to click the 'Save' button.
    3941#
    4042# Current point of contact at JPL Cybersecurity:
     
    7981NOTARIZATION_LOGFILE_PATH="."
    8082PASSWORD=${ISSM_BINARIES_PASS}
    81 PKG="ISSM-macOS-MATLAB"
     83PKG="ISSM-macOS-Intel-MATLAB"
    8284SIGNED_REPO_COPY="./signed"
    83 SIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/matlab/signed"
     85SIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/matlab/signed"
    8486SIGNING_LOCK_FILE="signing.lock"
    8587SUCCESS_LOGFILE="${SIGNED_REPO_COPY}/success.log"
    8688UNSIGNED_REPO_COPY="./unsigned"
    87 UNSIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/matlab/unsigned"
     89UNSIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/matlab/unsigned"
    8890USERNAME=${ISSM_BINARIES_USER}
    8991
  • issm/trunk-jpl/packagers/mac/intel/sign-issm-mac-intel-binaries-python-3.sh

    r28107 r28108  
    55# Cybersecurity server for signing macOS applications. Polls SCM of the
    66# Subversion repository hosted at
    7 # https://issm.ess.uci.edu/svn/issm-binaries/mac/python/3/unsigned to trigger
    8 # new builds.
    9 #
    10 # In order to replicate the required Jenkins project configuration:
    11 # - First, navigate to 'Manage Jenkins' -> 'Manage Plugins' and install the
     7# https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/python/3/unsigned to
     8# trigger new builds.
     9#
     10# In order to replicate the required Jenkins project configuration,
     11# - first, navigate to 'Manage Jenkins' -> 'Manage Plugins' and install the
    1212#       'Credentials Bindings Plugin' if it is not already installed.
    13 # - Contact one of the members of the ISSM development team for credentials for
     13# - contact one of the members of the ISSM development team for credentials for
    1414#       the ISSM binaries repository (mention that the credentials are stored in
    1515#       ISSM-Infrastructure.pdf).
    16 # - Navigate to 'Manage Jenkins' -> 'Manage Credentials' -> <domain> ->
     16# - navigate to 'Manage Jenkins' -> 'Manage Credentials' -> <domain> ->
    1717#       'Add Credentials' and enter the credentials from above.
    18 # - From the 'Dashboard', select 'New Item' -> 'Freestyle project'.
    19 # - Under 'Source Code Management', select 'Subversion'.
    20 #               - The 'Repository URL' text field should be set to
    21 #               "https://issm.ess.uci.edu/svn/issm-binaries/mac/matlab/unsigned".
    22 #               - The 'Credentials' select menu should be set to the new credentials
     18# - from the 'Dashboard', select 'New Item' -> 'Freestyle project'.
     19# - under 'Source Code Management', select 'Subversion',
     20#               - the 'Repository URL' text field should be set to
     21#
     22#               https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/python/3/unsigned
     23#
     24#               - the 'Credentials' select menu should be set to the new credentials
    2325#               created previously.
    24 #               - The 'Local module directory' text field should be set to the same
     26#               - the 'Local module directory' text field should be set to the same
    2527#               value as the constant UNSIGNED_REPO_COPY (set below to './unsigned').
    26 # - Under 'Build Triggers', check the box for 'Poll SCM' and set the
     28# - under 'Build Triggers', check the box for 'Poll SCM' and set the
    2729#       'Schedule' text area to "H/5 * * * *".
    28 # - Under 'Build Environment', check the box for 'Use secret text(s) or
     30# - under 'Build Environment', check the box for 'Use secret text(s) or
    2931#       file(s)', then under 'Bindings' click the 'Add...' button and select
    30 #       'Username and password (separated)'.
    31 #               - Set 'Username Variable' to "ISSM_BINARIES_USER".
    32 #               - Set 'Password Variable' to "ISSM_BINARIES_PASS".
    33 # - Under 'Credentials', select the same, new credentials that created
     32#       'Username and password (separated)',
     33#               - set 'Username Variable' to "ISSM_BINARIES_USER".
     34#               - set 'Password Variable' to "ISSM_BINARIES_PASS".
     35# - under 'Credentials', select the same, new credentials that created
    3436#       previously.
    35 # - The contents of this script can be copied/pasted directly into the ‘Build'
     37# - the contents of this script can be copied/pasted directly into the ‘Build'
    3638#       -> 'Execute Shell' -> ‘Command' textarea of the project configuration (or
    3739#       you can simply store the script on disk and call it from there).
    38 # - Make sure to click the 'Save' button.
     40# - make sure to click the 'Save' button.
    3941#
    4042# Current point of contact at JPL Cybersecurity:
     
    7981NOTARIZATION_LOGFILE_PATH="."
    8082PASSWORD=${ISSM_BINARIES_PASS}
    81 PKG="ISSM-macOS-Python-3"
     83PKG="ISSM-macOS-Intel-Python-3"
    8284SIGNED_REPO_COPY="./signed"
    83 SIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/python/3/signed"
     85SIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/python/3/signed"
    8486SIGNING_LOCK_FILE="signing.lock"
    8587SUCCESS_LOGFILE="${SIGNED_REPO_COPY}/success.log"
    8688UNSIGNED_REPO_COPY="./unsigned"
    87 UNSIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/python/3/unsigned"
     89UNSIGNED_REPO_URL="https://issm.ess.uci.edu/svn/issm-binaries/mac/intel/python/3/unsigned"
    8890USERNAME=${ISSM_BINARIES_USER}
    8991
  • issm/trunk-jpl/packagers/mac/transfer-issm-mac-binaries.sh

    r27111 r28108  
    1414#
    1515# See also:
    16 # - packagers/mac/complete-issm-mac-binaries-matlab.sh
    17 # - packagers/mac/complete-issm-mac-binaries-python-2.sh
    18 # - packagers/mac/complete-issm-mac-binaries-python-3.sh
     16# - packagers/mac/<ARCH>/complete-issm-mac-<ARCH>-binaries-<API>.sh
    1917################################################################################
    2018
     
    8381
    8482# Transfer signed package to ISSM Web site
    85 echo "Transferring signed package to ISSM Web site"
     83echo "Transferring signed package to ISSM website"
    8684scp -i ~/.ssh/pine_island_to_ross ${SIGNED_REPO_COPY}/${COMPRESSED_PKG} jenkins@ross.ics.uci.edu:/var/www/html/${COMPRESSED_PKG}
    8785
Note: See TracChangeset for help on using the changeset viewer.