Hex Artifact Content
Not logged in

Artifact c5489ad685d4fed26c7fc67b21df7070453ea31d:

Unrecognized artifact
0000: 65 6e 76 3a 0a 20 20 67 6c 6f 62 61 6c 3a 0a 20  env:.  global:. 
0010: 20 20 20 2d 20 52 55 53 54 5f 42 41 43 4b 54 52     - RUST_BACKTR
0020: 41 43 45 3d 31 0a 20 20 20 20 2d 20 52 55 53 54  ACE=1.    - RUST
0030: 5f 53 54 41 42 4c 45 3d 31 2e 32 34 2e 30 0a 20  _STABLE=1.24.0. 
0040: 20 20 20 2d 20 52 55 53 54 46 4c 41 47 53 3d 22     - RUSTFLAGS="
0050: 2d 43 20 6f 70 74 2d 6c 65 76 65 6c 3d 32 20 2d  -C opt-level=2 -
0060: 43 20 63 6f 64 65 67 65 6e 2d 75 6e 69 74 73 3d  C codegen-units=
0070: 38 22 0a 20 20 20 20 2d 20 50 41 54 48 3d 24 50  8".    - PATH=$P
0080: 41 54 48 3a 24 48 4f 4d 45 2f 2e 63 61 72 67 6f  ATH:$HOME/.cargo
0090: 2f 62 69 6e 0a 6c 61 6e 67 75 61 67 65 3a 20 72  /bin.language: r
00a0: 75 73 74 0a 73 74 61 67 65 73 3a 0a 20 20 2d 20  ust.stages:.  - 
00b0: 73 74 61 62 6c 65 0a 20 20 2d 20 6e 69 67 68 74  stable.  - night
00c0: 6c 79 2d 77 61 72 6d 75 70 0a 20 20 2d 20 6e 69  ly-warmup.  - ni
00d0: 67 68 74 6c 79 2d 74 65 73 74 73 0a 6a 6f 62 73  ghtly-tests.jobs
00e0: 3a 0a 20 20 69 6e 63 6c 75 64 65 3a 0a 20 20 20  :.  include:.   
00f0: 20 23 20 53 74 61 62 6c 65 0a 20 20 20 20 2d 20   # Stable.    - 
0100: 73 74 61 67 65 3a 20 73 74 61 62 6c 65 0a 20 20  stage: stable.  
0110: 20 20 20 20 73 63 72 69 70 74 3a 20 73 65 74 20      script: set 
0120: 2d 78 3b 20 73 63 72 69 70 74 73 2f 73 74 61 62  -x; scripts/stab
0130: 6c 65 0a 20 20 20 20 20 20 6f 73 3a 20 6c 69 6e  le.      os: lin
0140: 75 78 0a 20 20 20 20 20 20 72 75 73 74 3a 20 31  ux.      rust: 1
0150: 2e 32 34 2e 30 0a 20 20 20 20 2d 20 6f 73 3a 20  .24.0.    - os: 
0160: 6c 69 6e 75 78 0a 20 20 20 20 20 20 73 63 72 69  linux.      scri
0170: 70 74 3a 20 73 65 74 20 2d 78 3b 20 73 63 72 69  pt: set -x; scri
0180: 70 74 73 2f 73 74 61 62 6c 65 0a 20 20 20 20 20  pts/stable.     
0190: 20 72 75 73 74 3a 20 31 2e 32 34 2e 30 2d 69 36   rust: 1.24.0-i6
01a0: 38 36 2d 75 6e 6b 6e 6f 77 6e 2d 6c 69 6e 75 78  86-unknown-linux
01b0: 2d 67 6e 75 0a 20 20 20 20 20 20 61 64 64 6f 6e  -gnu.      addon
01c0: 73 3a 0a 20 20 20 20 20 20 20 20 61 70 74 3a 0a  s:.        apt:.
01d0: 20 20 20 20 20 20 20 20 20 20 70 61 63 6b 61 67            packag
01e0: 65 73 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20  es:.            
01f0: 2d 20 67 63 63 2d 6d 75 6c 74 69 6c 69 62 0a 20  - gcc-multilib. 
0200: 20 20 20 2d 20 6f 73 3a 20 6f 73 78 0a 20 20 20     - os: osx.   
0210: 20 20 20 73 63 72 69 70 74 3a 20 73 65 74 20 2d     script: set -
0220: 78 3b 20 73 63 72 69 70 74 73 2f 73 74 61 62 6c  x; scripts/stabl
0230: 65 0a 20 20 20 20 20 20 72 75 73 74 3a 20 31 2e  e.      rust: 1.
0240: 32 34 2e 30 0a 20 20 20 20 23 20 4e 69 67 68 74  24.0.    # Night
0250: 6c 79 20 63 6f 6d 70 69 6c 65 72 20 77 61 72 6d  ly compiler warm
0260: 2d 75 70 20 2b 20 63 6c 69 70 70 79 0a 20 20 20  -up + clippy.   
0270: 20 2d 20 73 74 61 67 65 3a 20 6e 69 67 68 74 6c   - stage: nightl
0280: 79 2d 77 61 72 6d 75 70 0a 20 20 20 20 20 20 73  y-warmup.      s
0290: 63 72 69 70 74 3a 20 73 65 74 20 2d 78 3b 20 73  cript: set -x; s
02a0: 63 72 69 70 74 73 2f 62 75 69 6c 64 2d 61 6c 6c  cripts/build-all
02b0: 0a 20 20 20 20 20 20 6f 73 3a 20 6c 69 6e 75 78  .      os: linux
02c0: 0a 20 20 20 20 20 20 72 75 73 74 3a 20 6e 69 67  .      rust: nig
02d0: 68 74 6c 79 2d 32 30 31 38 2d 30 32 2d 30 35 0a  htly-2018-02-05.
02e0: 20 20 20 20 2d 20 73 63 72 69 70 74 3a 20 73 65      - script: se
02f0: 74 20 2d 78 3b 20 73 63 72 69 70 74 73 2f 63 6c  t -x; scripts/cl
0300: 69 70 70 79 2d 66 66 69 2d 75 74 69 6c 73 20 26  ippy-ffi-utils &
0310: 26 20 73 63 72 69 70 74 73 2f 63 6c 69 70 70 79  & scripts/clippy
0320: 2d 72 65 61 6c 0a 20 20 20 20 20 20 6f 73 3a 20  -real.      os: 
0330: 6c 69 6e 75 78 0a 20 20 20 20 20 20 72 75 73 74  linux.      rust
0340: 3a 20 6e 69 67 68 74 6c 79 2d 32 30 31 38 2d 30  : nightly-2018-0
0350: 32 2d 30 35 0a 20 20 20 20 23 20 4e 69 67 68 74  2-05.    # Night
0360: 6c 79 20 74 65 73 74 73 20 2b 20 63 6c 69 70 70  ly tests + clipp
0370: 79 0a 20 20 20 20 2d 20 73 74 61 67 65 3a 20 6e  y.    - stage: n
0380: 69 67 68 74 6c 79 2d 74 65 73 74 73 0a 20 20 20  ightly-tests.   
0390: 20 20 20 73 63 72 69 70 74 3a 20 73 65 74 20 2d     script: set -
03a0: 78 3b 20 73 63 72 69 70 74 73 2f 74 65 73 74 2d  x; scripts/test-
03b0: 61 6c 6c 0a 20 20 20 20 20 20 6f 73 3a 20 6c 69  all.      os: li
03c0: 6e 75 78 0a 20 20 20 20 20 20 72 75 73 74 3a 20  nux.      rust: 
03d0: 6e 69 67 68 74 6c 79 2d 32 30 31 38 2d 30 32 2d  nightly-2018-02-
03e0: 30 35 0a 20 20 20 20 2d 20 73 63 72 69 70 74 3a  05.    - script:
03f0: 20 73 65 74 20 2d 78 3b 20 73 63 72 69 70 74 73   set -x; scripts
0400: 2f 63 6c 69 70 70 79 2d 6d 6f 63 6b 0a 20 20 20  /clippy-mock.   
0410: 20 20 20 6f 73 3a 20 6c 69 6e 75 78 0a 20 20 20     os: linux.   
0420: 20 20 20 72 75 73 74 3a 20 6e 69 67 68 74 6c 79     rust: nightly
0430: 2d 32 30 31 38 2d 30 32 2d 30 35 0a 73 75 64 6f  -2018-02-05.sudo
0440: 3a 20 66 61 6c 73 65 0a 63 61 63 68 65 3a 0a 20  : false.cache:. 
0450: 20 63 61 72 67 6f 3a 20 74 72 75 65 0a 62 65 66   cargo: true.bef
0460: 6f 72 65 5f 73 63 72 69 70 74 3a 0a 20 20 23 20  ore_script:.  # 
0470: 45 78 70 65 63 74 65 64 20 76 65 72 73 69 6f 6e  Expected version
0480: 20 63 68 61 6e 67 65 20 50 52 20 74 69 74 6c 65   change PR title
0490: 20 66 6f 72 6d 61 74 3a 0a 20 20 23 20 56 65 72   format:.  # Ver
04a0: 73 69 6f 6e 20 63 68 61 6e 67 65 3a 20 73 61 66  sion change: saf
04b0: 65 5f 61 70 70 20 74 6f 20 30 2e 32 2e 32 3b 20  e_app to 0.2.2; 
04c0: 73 61 66 65 5f 61 75 74 68 65 6e 74 69 63 61 74  safe_authenticat
04d0: 6f 72 20 74 6f 20 30 2e 32 2e 33 3b 20 73 61 66  or to 0.2.3; saf
04e0: 65 5f 63 6f 72 65 20 74 6f 20 30 2e 32 36 2e 30  e_core to 0.26.0
04f0: 3b 0a 20 20 2d 20 69 66 20 5b 5b 20 22 24 54 52  ;.  - if [[ "$TR
0500: 41 56 49 53 5f 43 4f 4d 4d 49 54 5f 4d 45 53 53  AVIS_COMMIT_MESS
0510: 41 47 45 22 20 3d 7e 20 5b 56 76 5d 65 72 73 69  AGE" =~ [Vv]ersi
0520: 6f 6e 5b 5b 3a 73 70 61 63 65 3a 5d 5d 63 68 61  on[[:space:]]cha
0530: 6e 67 65 2e 2a 73 61 66 65 5f 61 75 74 68 65 6e  nge.*safe_authen
0540: 74 69 63 61 74 6f 72 5b 5b 3a 73 70 61 63 65 3a  ticator[[:space:
0550: 5d 5d 74 6f 5b 5b 3a 73 70 61 63 65 3a 5d 5d 28  ]]to[[:space:]](
0560: 5b 5e 3b 5d 2b 29 20 5d 5d 3b 20 74 68 65 6e 0a  [^;]+) ]]; then.
0570: 20 20 20 20 20 20 53 41 46 45 5f 41 55 54 48 45        SAFE_AUTHE
0580: 4e 54 49 43 41 54 4f 52 5f 56 45 52 53 49 4f 4e  NTICATOR_VERSION
0590: 3d 76 24 28 63 61 72 67 6f 20 70 6b 67 69 64 20  =v$(cargo pkgid 
05a0: 2d 2d 6d 61 6e 69 66 65 73 74 2d 70 61 74 68 3d  --manifest-path=
05b0: 73 61 66 65 5f 61 75 74 68 65 6e 74 69 63 61 74  safe_authenticat
05c0: 6f 72 2f 43 61 72 67 6f 2e 74 6f 6d 6c 20 7c 20  or/Cargo.toml | 
05d0: 73 65 64 20 2d 65 20 22 73 2f 2e 2a 5b 3a 23 5d  sed -e "s/.*[:#]
05e0: 5c 28 2e 2a 5c 29 2f 5c 31 2f 22 29 3b 0a 20 20  \(.*\)/\1/");.  
05f0: 20 20 20 20 69 66 20 5b 5b 20 22 76 24 7b 42 41      if [[ "v${BA
0600: 53 48 5f 52 45 4d 41 54 43 48 5b 31 5d 7d 22 20  SH_REMATCH[1]}" 
0610: 21 3d 20 24 53 41 46 45 5f 41 55 54 48 45 4e 54  != $SAFE_AUTHENT
0620: 49 43 41 54 4f 52 5f 56 45 52 53 49 4f 4e 20 5d  ICATOR_VERSION ]
0630: 5d 3b 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20  ]; then.        
0640: 65 63 68 6f 20 22 56 65 72 73 69 6f 6e 20 6d 69  echo "Version mi
0650: 73 6d 61 74 63 68 20 62 65 74 77 65 65 6e 20 63  smatch between c
0660: 6f 6d 6d 69 74 20 6d 65 73 73 61 67 65 20 61 6e  ommit message an
0670: 64 20 43 61 72 67 6f 2e 74 6f 6d 6c 20 66 6f 72  d Cargo.toml for
0680: 20 73 61 66 65 5f 61 75 74 68 65 6e 74 69 63 61   safe_authentica
0690: 74 6f 72 2e 22 3b 0a 20 20 20 20 20 20 20 20 66  tor.";.        f
06a0: 61 6c 73 65 3b 0a 20 20 20 20 20 20 66 69 3b 0a  alse;.      fi;.
06b0: 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 53      else.      S
06c0: 41 46 45 5f 41 55 54 48 45 4e 54 49 43 41 54 4f  AFE_AUTHENTICATO
06d0: 52 5f 56 45 52 53 49 4f 4e 3d 24 7b 54 52 41 56  R_VERSION=${TRAV
06e0: 49 53 5f 43 4f 4d 4d 49 54 3a 30 3a 37 7d 3b 0a  IS_COMMIT:0:7};.
06f0: 20 20 20 20 66 69 0a 20 20 2d 20 69 66 20 5b 5b      fi.  - if [[
0700: 20 22 24 54 52 41 56 49 53 5f 43 4f 4d 4d 49 54   "$TRAVIS_COMMIT
0710: 5f 4d 45 53 53 41 47 45 22 20 3d 7e 20 5b 56 76  _MESSAGE" =~ [Vv
0720: 5d 65 72 73 69 6f 6e 5b 5b 3a 73 70 61 63 65 3a  ]ersion[[:space:
0730: 5d 5d 63 68 61 6e 67 65 2e 2a 73 61 66 65 5f 61  ]]change.*safe_a
0740: 70 70 5b 5b 3a 73 70 61 63 65 3a 5d 5d 74 6f 5b  pp[[:space:]]to[
0750: 5b 3a 73 70 61 63 65 3a 5d 5d 28 5b 5e 3b 5d 2b  [:space:]]([^;]+
0760: 29 20 5d 5d 3b 20 74 68 65 6e 0a 20 20 20 20 20  ) ]]; then.     
0770: 20 53 41 46 45 5f 41 50 50 5f 56 45 52 53 49 4f   SAFE_APP_VERSIO
0780: 4e 3d 76 24 28 63 61 72 67 6f 20 70 6b 67 69 64  N=v$(cargo pkgid
0790: 20 2d 2d 6d 61 6e 69 66 65 73 74 2d 70 61 74 68   --manifest-path
07a0: 3d 73 61 66 65 5f 61 70 70 2f 43 61 72 67 6f 2e  =safe_app/Cargo.
07b0: 74 6f 6d 6c 20 7c 20 73 65 64 20 2d 65 20 22 73  toml | sed -e "s
07c0: 2f 2e 2a 5b 3a 23 5d 5c 28 2e 2a 5c 29 2f 5c 31  /.*[:#]\(.*\)/\1
07d0: 2f 22 29 3b 0a 20 20 20 20 20 20 69 66 20 5b 5b  /");.      if [[
07e0: 20 22 76 24 7b 42 41 53 48 5f 52 45 4d 41 54 43   "v${BASH_REMATC
07f0: 48 5b 31 5d 7d 22 20 21 3d 20 24 53 41 46 45 5f  H[1]}" != $SAFE_
0800: 41 50 50 5f 56 45 52 53 49 4f 4e 20 5d 5d 3b 20  APP_VERSION ]]; 
0810: 74 68 65 6e 0a 20 20 20 20 20 20 20 20 65 63 68  then.        ech
0820: 6f 20 22 56 65 72 73 69 6f 6e 20 6d 69 73 6d 61  o "Version misma
0830: 74 63 68 20 62 65 74 77 65 65 6e 20 63 6f 6d 6d  tch between comm
0840: 69 74 20 6d 65 73 73 61 67 65 20 61 6e 64 20 43  it message and C
0850: 61 72 67 6f 2e 74 6f 6d 6c 20 66 6f 72 20 73 61  argo.toml for sa
0860: 66 65 5f 61 70 70 2e 22 3b 0a 20 20 20 20 20 20  fe_app.";.      
0870: 20 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 66    false;.      f
0880: 69 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20  i;.    else.    
0890: 20 20 53 41 46 45 5f 41 50 50 5f 56 45 52 53 49    SAFE_APP_VERSI
08a0: 4f 4e 3d 24 7b 54 52 41 56 49 53 5f 43 4f 4d 4d  ON=${TRAVIS_COMM
08b0: 49 54 3a 30 3a 37 7d 3b 0a 20 20 20 20 66 69 0a  IT:0:7};.    fi.
08c0: 20 20 2d 20 63 75 72 6c 20 2d 73 53 4c 20 68 74    - curl -sSL ht
08d0: 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d  tps://github.com
08e0: 2f 6d 61 69 64 73 61 66 65 2f 51 41 2f 72 61 77  /maidsafe/QA/raw
08f0: 2f 6d 61 73 74 65 72 2f 74 72 61 76 69 73 2f 63  /master/travis/c
0900: 61 72 67 6f 5f 69 6e 73 74 61 6c 6c 2e 73 68 20  argo_install.sh 
0910: 3e 20 63 61 72 67 6f 5f 69 6e 73 74 61 6c 6c 2e  > cargo_install.
0920: 73 68 0a 20 20 2d 20 62 61 73 68 20 63 61 72 67  sh.  - bash carg
0930: 6f 5f 69 6e 73 74 61 6c 6c 2e 73 68 20 63 61 72  o_install.sh car
0940: 67 6f 2d 70 72 75 6e 65 3b 0a 20 20 2d 20 69 66  go-prune;.  - if
0950: 20 5b 5b 20 22 24 54 52 41 56 49 53 5f 52 55 53   [[ "$TRAVIS_RUS
0960: 54 5f 56 45 52 53 49 4f 4e 22 20 3d 3d 20 22 24  T_VERSION" == "$
0970: 52 55 53 54 5f 53 54 41 42 4c 45 22 20 26 26 20  RUST_STABLE" && 
0980: 24 54 52 41 56 49 53 5f 45 56 45 4e 54 5f 54 59  $TRAVIS_EVENT_TY
0990: 50 45 20 3d 20 70 75 6c 6c 5f 72 65 71 75 65 73  PE = pull_reques
09a0: 74 20 5d 5d 3b 20 74 68 65 6e 0a 20 20 20 20 20  t ]]; then.     
09b0: 20 62 61 73 68 20 63 61 72 67 6f 5f 69 6e 73 74   bash cargo_inst
09c0: 61 6c 6c 2e 73 68 20 72 75 73 74 66 6d 74 20 30  all.sh rustfmt 0
09d0: 2e 39 2e 30 3b 0a 20 20 20 20 65 6c 69 66 20 5b  .9.0;.    elif [
09e0: 5b 20 22 24 54 52 41 56 49 53 5f 52 55 53 54 5f  [ "$TRAVIS_RUST_
09f0: 56 45 52 53 49 4f 4e 22 20 3d 7e 20 6e 69 67 68  VERSION" =~ nigh
0a00: 74 6c 79 20 26 26 20 24 54 52 41 56 49 53 5f 45  tly && $TRAVIS_E
0a10: 56 45 4e 54 5f 54 59 50 45 20 3d 20 70 75 6c 6c  VENT_TYPE = pull
0a20: 5f 72 65 71 75 65 73 74 20 5d 5d 3b 20 74 68 65  _request ]]; the
0a30: 6e 0a 20 20 20 20 20 20 62 61 73 68 20 63 61 72  n.      bash car
0a40: 67 6f 5f 69 6e 73 74 61 6c 6c 2e 73 68 20 63 6c  go_install.sh cl
0a50: 69 70 70 79 20 30 2e 30 2e 31 38 36 3b 0a 20 20  ippy 0.0.186;.  
0a60: 20 20 66 69 0a 61 66 74 65 72 5f 73 63 72 69 70    fi.after_scrip
0a70: 74 3a 0a 20 20 2d 20 69 66 20 5b 5b 20 24 54 52  t:.  - if [[ $TR
0a80: 41 56 49 53 5f 45 56 45 4e 54 5f 54 59 50 45 20  AVIS_EVENT_TYPE 
0a90: 3d 20 70 75 6c 6c 5f 72 65 71 75 65 73 74 20 26  = pull_request &
0aa0: 26 20 2d 6e 20 24 28 67 69 74 20 64 69 66 66 20  & -n $(git diff 
0ab0: 2d 2d 73 68 6f 72 74 73 74 61 74 20 32 3e 20 2f  --shortstat 2> /
0ac0: 64 65 76 2f 6e 75 6c 6c 20 7c 20 74 61 69 6c 20  dev/null | tail 
0ad0: 2d 6e 31 29 20 5d 5d 3b 20 74 68 65 6e 0a 20 20  -n1) ]]; then.  
0ae0: 20 20 20 20 65 63 68 6f 20 22 57 6f 72 6b 69 6e      echo "Workin
0af0: 67 20 74 72 65 65 20 69 73 20 64 69 72 74 79 20  g tree is dirty 
0b00: 61 66 74 65 72 20 62 75 69 6c 64 69 6e 67 2e 20  after building. 
0b10: 20 50 72 6f 62 61 62 6c 79 20 43 61 72 67 6f 2e   Probably Cargo.
0b20: 6c 6f 63 6b 20 73 68 6f 75 6c 64 20 62 65 20 75  lock should be u
0b30: 70 64 61 74 65 64 2e 22 3b 0a 20 20 20 20 20 20  pdated.";.      
0b40: 67 69 74 20 73 74 61 74 75 73 3b 0a 20 20 20 20  git status;.    
0b50: 20 20 74 72 61 76 69 73 5f 74 65 72 6d 69 6e 61    travis_termina
0b60: 74 65 20 31 3b 0a 20 20 20 20 66 69 0a 62 65 66  te 1;.    fi.bef
0b70: 6f 72 65 5f 63 61 63 68 65 3a 0a 20 20 2d 20 63  ore_cache:.  - c
0b80: 61 72 67 6f 20 70 72 75 6e 65 0a 62 65 66 6f 72  argo prune.befor
0b90: 65 5f 64 65 70 6c 6f 79 3a 0a 20 20 2d 20 6d 6b  e_deploy:.  - mk
0ba0: 64 69 72 20 2d 70 20 74 61 72 67 65 74 2f 64 65  dir -p target/de
0bb0: 70 6c 6f 79 0a 20 20 2d 20 69 66 20 5b 5b 20 22  ploy.  - if [[ "
0bc0: 24 54 52 41 56 49 53 5f 52 55 53 54 5f 56 45 52  $TRAVIS_RUST_VER
0bd0: 53 49 4f 4e 22 20 3d 7e 20 69 36 38 36 20 5d 5d  SION" =~ i686 ]]
0be0: 3b 20 74 68 65 6e 0a 20 20 20 20 20 20 41 52 43  ; then.      ARC
0bf0: 48 3d 78 38 36 3b 0a 20 20 20 20 65 6c 73 65 0a  H=x86;.    else.
0c00: 20 20 20 20 20 20 41 52 43 48 3d 78 36 34 3b 0a        ARCH=x64;.
0c10: 20 20 20 20 66 69 0a 20 20 23 20 57 65 20 6e 65      fi.  # We ne
0c20: 65 64 20 74 6f 20 75 73 65 20 60 2d 78 60 20 6f  ed to use `-x` o
0c30: 6e 20 4f 53 20 58 20 73 69 6e 63 65 20 60 73 74  n OS X since `st
0c40: 72 69 70 60 20 66 61 69 6c 73 20 74 6f 20 72 65  rip` fails to re
0c50: 6d 6f 76 65 20 67 6c 6f 62 61 6c 20 73 79 6d 62  move global symb
0c60: 6f 6c 73 20 66 72 6f 6d 20 72 65 6c 65 61 73 65  ols from release
0c70: 20 62 75 69 6c 64 73 20 6f 6e 20 4f 53 20 58 2e   builds on OS X.
0c80: 0a 20 20 2d 20 69 66 20 5b 5b 20 22 24 54 52 41  .  - if [[ "$TRA
0c90: 56 49 53 5f 4f 53 5f 4e 41 4d 45 22 20 3d 20 6c  VIS_OS_NAME" = l
0ca0: 69 6e 75 78 20 5d 5d 3b 20 74 68 65 6e 0a 20 20  inux ]]; then.  
0cb0: 20 20 20 20 53 55 46 46 49 58 3d 73 6f 3b 0a 20      SUFFIX=so;. 
0cc0: 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 53 55     else.      SU
0cd0: 46 46 49 58 3d 64 79 6c 69 62 20 53 54 52 49 50  FFIX=dylib STRIP
0ce0: 5f 41 52 47 3d 2d 78 3b 0a 20 20 20 20 66 69 0a  _ARG=-x;.    fi.
0cf0: 20 20 23 20 42 75 69 6c 64 20 66 6f 72 20 6d 6f    # Build for mo
0d00: 63 6b 2e 0a 20 20 2d 20 63 61 72 67 6f 20 62 75  ck..  - cargo bu
0d10: 69 6c 64 20 2d 2d 76 65 72 62 6f 73 65 20 2d 2d  ild --verbose --
0d20: 72 65 6c 65 61 73 65 20 2d 2d 66 65 61 74 75 72  release --featur
0d30: 65 73 3d 75 73 65 2d 6d 6f 63 6b 2d 72 6f 75 74  es=use-mock-rout
0d40: 69 6e 67 20 2d 2d 6d 61 6e 69 66 65 73 74 2d 70  ing --manifest-p
0d50: 61 74 68 3d 73 61 66 65 5f 61 75 74 68 65 6e 74  ath=safe_authent
0d60: 69 63 61 74 6f 72 2f 43 61 72 67 6f 2e 74 6f 6d  icator/Cargo.tom
0d70: 6c 0a 20 20 2d 20 63 61 72 67 6f 20 62 75 69 6c  l.  - cargo buil
0d80: 64 20 2d 2d 76 65 72 62 6f 73 65 20 2d 2d 72 65  d --verbose --re
0d90: 6c 65 61 73 65 20 2d 2d 66 65 61 74 75 72 65 73  lease --features
0da0: 3d 75 73 65 2d 6d 6f 63 6b 2d 72 6f 75 74 69 6e  =use-mock-routin
0db0: 67 20 2d 2d 6d 61 6e 69 66 65 73 74 2d 70 61 74  g --manifest-pat
0dc0: 68 3d 73 61 66 65 5f 61 70 70 2f 43 61 72 67 6f  h=safe_app/Cargo
0dd0: 2e 74 6f 6d 6c 0a 20 20 2d 20 73 74 72 69 70 20  .toml.  - strip 
0de0: 24 53 54 52 49 50 5f 41 52 47 20 74 61 72 67 65  $STRIP_ARG targe
0df0: 74 2f 72 65 6c 65 61 73 65 2f 6c 69 62 73 61 66  t/release/libsaf
0e00: 65 5f 61 75 74 68 65 6e 74 69 63 61 74 6f 72 2e  e_authenticator.
0e10: 24 53 55 46 46 49 58 20 74 61 72 67 65 74 2f 72  $SUFFIX target/r
0e20: 65 6c 65 61 73 65 2f 6c 69 62 73 61 66 65 5f 61  elease/libsafe_a
0e30: 70 70 2e 24 53 55 46 46 49 58 0a 20 20 2d 20 7a  pp.$SUFFIX.  - z
0e40: 69 70 20 2d 6a 20 74 61 72 67 65 74 2f 64 65 70  ip -j target/dep
0e50: 6c 6f 79 2f 73 61 66 65 5f 61 75 74 68 65 6e 74  loy/safe_authent
0e60: 69 63 61 74 6f 72 2d 6d 6f 63 6b 2d 24 53 41 46  icator-mock-$SAF
0e70: 45 5f 41 55 54 48 45 4e 54 49 43 41 54 4f 52 5f  E_AUTHENTICATOR_
0e80: 56 45 52 53 49 4f 4e 2d 24 54 52 41 56 49 53 5f  VERSION-$TRAVIS_
0e90: 4f 53 5f 4e 41 4d 45 2d 24 41 52 43 48 2e 7a 69  OS_NAME-$ARCH.zi
0ea0: 70 20 74 61 72 67 65 74 2f 72 65 6c 65 61 73 65  p target/release
0eb0: 2f 6c 69 62 73 61 66 65 5f 61 75 74 68 65 6e 74  /libsafe_authent
0ec0: 69 63 61 74 6f 72 2e 24 53 55 46 46 49 58 0a 20  icator.$SUFFIX. 
0ed0: 20 2d 20 7a 69 70 20 2d 6a 20 74 61 72 67 65 74   - zip -j target
0ee0: 2f 64 65 70 6c 6f 79 2f 73 61 66 65 5f 61 70 70  /deploy/safe_app
0ef0: 2d 6d 6f 63 6b 2d 24 53 41 46 45 5f 41 50 50 5f  -mock-$SAFE_APP_
0f00: 56 45 52 53 49 4f 4e 2d 24 54 52 41 56 49 53 5f  VERSION-$TRAVIS_
0f10: 4f 53 5f 4e 41 4d 45 2d 24 41 52 43 48 2e 7a 69  OS_NAME-$ARCH.zi
0f20: 70 20 74 61 72 67 65 74 2f 72 65 6c 65 61 73 65  p target/release
0f30: 2f 6c 69 62 73 61 66 65 5f 61 70 70 2e 24 53 55  /libsafe_app.$SU
0f40: 46 46 49 58 0a 20 20 23 20 42 75 69 6c 64 20 66  FFIX.  # Build f
0f50: 6f 72 20 70 72 6f 64 75 63 74 69 6f 6e 2e 0a 20  or production.. 
0f60: 20 2d 20 63 61 72 67 6f 20 62 75 69 6c 64 20 2d   - cargo build -
0f70: 2d 76 65 72 62 6f 73 65 20 2d 2d 72 65 6c 65 61  -verbose --relea
0f80: 73 65 20 2d 2d 6d 61 6e 69 66 65 73 74 2d 70 61  se --manifest-pa
0f90: 74 68 3d 73 61 66 65 5f 61 75 74 68 65 6e 74 69  th=safe_authenti
0fa0: 63 61 74 6f 72 2f 43 61 72 67 6f 2e 74 6f 6d 6c  cator/Cargo.toml
0fb0: 0a 20 20 2d 20 63 61 72 67 6f 20 62 75 69 6c 64  .  - cargo build
0fc0: 20 2d 2d 76 65 72 62 6f 73 65 20 2d 2d 72 65 6c   --verbose --rel
0fd0: 65 61 73 65 20 2d 2d 6d 61 6e 69 66 65 73 74 2d  ease --manifest-
0fe0: 70 61 74 68 3d 73 61 66 65 5f 61 70 70 2f 43 61  path=safe_app/Ca
0ff0: 72 67 6f 2e 74 6f 6d 6c 0a 20 20 2d 20 73 74 72  rgo.toml.  - str
1000: 69 70 20 24 53 54 52 49 50 5f 41 52 47 20 74 61  ip $STRIP_ARG ta
1010: 72 67 65 74 2f 72 65 6c 65 61 73 65 2f 6c 69 62  rget/release/lib
1020: 73 61 66 65 5f 61 75 74 68 65 6e 74 69 63 61 74  safe_authenticat
1030: 6f 72 2e 24 53 55 46 46 49 58 20 74 61 72 67 65  or.$SUFFIX targe
1040: 74 2f 72 65 6c 65 61 73 65 2f 6c 69 62 73 61 66  t/release/libsaf
1050: 65 5f 61 70 70 2e 24 53 55 46 46 49 58 0a 20 20  e_app.$SUFFIX.  
1060: 2d 20 7a 69 70 20 2d 6a 20 74 61 72 67 65 74 2f  - zip -j target/
1070: 64 65 70 6c 6f 79 2f 73 61 66 65 5f 61 75 74 68  deploy/safe_auth
1080: 65 6e 74 69 63 61 74 6f 72 2d 24 53 41 46 45 5f  enticator-$SAFE_
1090: 41 55 54 48 45 4e 54 49 43 41 54 4f 52 5f 56 45  AUTHENTICATOR_VE
10a0: 52 53 49 4f 4e 2d 24 54 52 41 56 49 53 5f 4f 53  RSION-$TRAVIS_OS
10b0: 5f 4e 41 4d 45 2d 24 41 52 43 48 2e 7a 69 70 20  _NAME-$ARCH.zip 
10c0: 74 61 72 67 65 74 2f 72 65 6c 65 61 73 65 2f 6c  target/release/l
10d0: 69 62 73 61 66 65 5f 61 75 74 68 65 6e 74 69 63  ibsafe_authentic
10e0: 61 74 6f 72 2e 24 53 55 46 46 49 58 0a 20 20 2d  ator.$SUFFIX.  -
10f0: 20 7a 69 70 20 2d 6a 20 74 61 72 67 65 74 2f 64   zip -j target/d
1100: 65 70 6c 6f 79 2f 73 61 66 65 5f 61 70 70 2d 24  eploy/safe_app-$
1110: 53 41 46 45 5f 41 50 50 5f 56 45 52 53 49 4f 4e  SAFE_APP_VERSION
1120: 2d 24 54 52 41 56 49 53 5f 4f 53 5f 4e 41 4d 45  -$TRAVIS_OS_NAME
1130: 2d 24 41 52 43 48 2e 7a 69 70 20 74 61 72 67 65  -$ARCH.zip targe
1140: 74 2f 72 65 6c 65 61 73 65 2f 6c 69 62 73 61 66  t/release/libsaf
1150: 65 5f 61 70 70 2e 24 53 55 46 46 49 58 0a 64 65  e_app.$SUFFIX.de
1160: 70 6c 6f 79 3a 0a 20 20 70 72 6f 76 69 64 65 72  ploy:.  provider
1170: 3a 20 73 33 0a 20 20 61 63 63 65 73 73 5f 6b 65  : s3.  access_ke
1180: 79 5f 69 64 3a 20 41 4b 49 41 49 41 32 54 58 54  y_id: AKIAIA2TXT
1190: 47 37 45 56 35 56 49 47 32 51 0a 20 20 73 65 63  G7EV5VIG2Q.  sec
11a0: 72 65 74 5f 61 63 63 65 73 73 5f 6b 65 79 3a 0a  ret_access_key:.
11b0: 20 20 20 20 73 65 63 75 72 65 3a 20 71 45 44 61      secure: qEDa
11c0: 79 36 54 43 41 79 33 74 42 4c 71 4c 59 46 4f 78  y6TCAy3tBLqLYFOx
11d0: 39 4f 6a 41 64 6f 52 6c 30 31 30 70 61 4b 32 2f  9OjAdoRl010paK2/
11e0: 2f 74 65 46 45 54 66 77 55 66 4a 41 2f 52 74 4e  /teFETfwUfJA/RtN
11f0: 53 66 6b 70 31 79 72 67 78 2b 6b 5a 33 46 4f 38  Sfkp1yrgx+kZ3FO8
1200: 63 74 68 64 44 6e 77 52 33 7a 6a 4d 33 70 6b 43  cthdDnwR3zjM3pkC
1210: 4c 2b 35 6d 47 6b 51 4d 41 67 76 52 59 37 72 63  L+5mGkQMAgvRY7rc
1220: 45 42 35 48 31 56 79 4f 34 6a 6b 5a 52 6f 42 34  EB5H1VyO4jkZRoB4
1230: 6e 2f 79 55 75 35 6a 42 34 64 48 64 65 65 52 57  n/yUu5jB4dHdeeRW
1240: 54 4f 4a 78 4e 4f 4f 50 41 30 47 31 51 36 35 4c  TOJxNOOPA0G1Q65L
1250: 4c 6b 4a 71 6c 32 4a 47 6f 4a 61 74 71 45 33 70  LkJql2JGoJatqE3p
1260: 42 6d 4a 6d 30 58 38 3d 0a 20 20 62 75 63 6b 65  BmJm0X8=.  bucke
1270: 74 3a 20 73 61 66 65 2d 63 6c 69 65 6e 74 2d 6c  t: safe-client-l
1280: 69 62 73 0a 20 20 6c 6f 63 61 6c 2d 64 69 72 3a  ibs.  local-dir:
1290: 20 74 61 72 67 65 74 2f 64 65 70 6c 6f 79 0a 20   target/deploy. 
12a0: 20 61 63 6c 3a 20 70 75 62 6c 69 63 5f 72 65 61   acl: public_rea
12b0: 64 0a 20 20 72 65 67 69 6f 6e 3a 20 65 75 2d 77  d.  region: eu-w
12c0: 65 73 74 2d 32 0a 20 20 73 6b 69 70 5f 63 6c 65  est-2.  skip_cle
12d0: 61 6e 75 70 3a 20 74 72 75 65 0a 20 20 6f 6e 3a  anup: true.  on:
12e0: 0a 20 20 20 20 62 72 61 6e 63 68 3a 20 6d 61 73  .    branch: mas
12f0: 74 65 72 0a 20 20 20 20 74 61 67 73 3a 20 66 61  ter.    tags: fa
1300: 6c 73 65 0a 20 20 20 20 63 6f 6e 64 69 74 69 6f  lse.    conditio
1310: 6e 3a 20 24 54 52 41 56 49 53 5f 52 55 53 54 5f  n: $TRAVIS_RUST_
1320: 56 45 52 53 49 4f 4e 20 3d 7e 20 24 52 55 53 54  VERSION =~ $RUST
1330: 5f 53 54 41 42 4c 45 20 26 26 20 24 54 52 41 56  _STABLE && $TRAV
1340: 49 53 5f 45 56 45 4e 54 5f 54 59 50 45 20 3d 20  IS_EVENT_TYPE = 
1350: 70 75 73 68 0a 61 66 74 65 72 5f 64 65 70 6c 6f  push.after_deplo
1360: 79 3a 20 72 6d 20 2d 72 66 20 74 61 72 67 65 74  y: rm -rf target
1370: 2f 64 65 70 6c 6f 79 0a                          /deploy.