github.com/zkry/enry@v1.6.3/.travis.yml (about)

     1  language: go
     2  
     3  go:
     4    - 1.9.x
     5    - tip
     6  
     7  addons:
     8    apt:
     9      packages:
    10        - libonig-dev
    11  
    12  matrix:
    13    allow_failures:
    14      - go: tip
    15    fast_finish: true
    16  
    17  env:
    18    - ONIGUMURA=0
    19    - ONIGUMURA=1
    20  
    21  install:
    22    - rm -rf $GOPATH/src/gopkg.in/src-d
    23    - mkdir -p $GOPATH/src/gopkg.in/src-d
    24    - ln -s $PWD $GOPATH/src/gopkg.in/src-d/enry.v1
    25    - cd $GOPATH/src/gopkg.in/src-d/enry.v1
    26    - if [ "$ONIGUMURA" == "1" ]; then make onigumura; fi
    27    - go get -v -t ./...
    28  
    29  script:
    30    - make test-coverage
    31  
    32  after_success:
    33    - bash <(curl -s https://codecov.io/bash)
    34  
    35  before_deploy:
    36    - make packages
    37  
    38  deploy:
    39    provider: releases
    40    api_key:
    41      secure: $GITHUB_TOKEN
    42    file_glob: true
    43    file: build/*.tar.gz
    44    skip_cleanup: true
    45    on:
    46      tags: true
    47  
    48  jobs:
    49    env:
    50      - ONIGUMURA=0    
    51    include:
    52      - stage: test
    53        language: scala
    54        jdk: oraclejdk8
    55  
    56        install:
    57          - GIMME_OUTPUT=$(gimme 1.8 | tee -a $HOME/.bashrc) && eval "$GIMME_OUTPUT"
    58          - export GOPATH=$HOME/gopath
    59          - mkdir -p $GOPATH/src/gopkg.in/src-d/enry.v1
    60          - rsync -az ${TRAVIS_BUILD_DIR}/ $GOPATH/src/gopkg.in/src-d/enry.v1
    61          - go get -v gopkg.in/src-d/enry.v1/...
    62  
    63        before_script:
    64          - cd java
    65          - make
    66  
    67        script:
    68          - make test
    69  
    70        before_deploy:
    71          - cd ..
    72  
    73        deploy:
    74          provider: releases
    75          api_key:
    76            secure: $GITHUB_TOKEN
    77          file:
    78            - ./.shared/linux-x86-64/libenry.so
    79          skip_cleanup: true
    80          on:
    81            tags: true
    82  
    83      - stage: Build macOS shared
    84  
    85        env:
    86          - OSXCROSS_PACKAGE="osxcross_3034f7149716d815bc473d0a7b35d17e4cf175aa.tar.gz"
    87          - OSXCROSS_URL="https://github.com/bblfsh/client-scala/releases/download/v1.5.2/${OSXCROSS_PACKAGE}"
    88          - PATH="/$HOME/osxcross/bin:$PATH"
    89  
    90        sudo: true
    91  
    92        install:
    93          - if [[ -z "$TRAVIS_TAG" ]]; then echo "Skipping this build for non-tag builds."; exit 0; fi
    94          - rm -rf $GOPATH/src/gopkg.in/src-d
    95          - mkdir -p $GOPATH/src/gopkg.in/src-d
    96          - ln -s $PWD $GOPATH/src/gopkg.in/src-d/enry.v1
    97          - cd $GOPATH/src/gopkg.in/src-d/enry.v1
    98          - go get -v -t ./...
    99          - sudo apt-get update
   100          - sudo apt-get install -y --no-install-recommends clang g++ gcc gcc-multilib libc6-dev libc6-dev-i386 mingw-w64 patch xz-utils
   101          - cd ${HOME}
   102          - curl -sSL ${OSXCROSS_URL} | tar -C ${HOME} -xzf - 
   103          - cd $GOPATH/src/gopkg.in/src-d/enry.v1
   104  
   105        script:
   106          - make darwin-shared
   107  
   108        before_deploy:
   109          - echo "skip before_deploy"
   110  
   111        deploy:
   112          provider: releases
   113          api_key:
   114            secure: $GITHUB_TOKEN
   115          file: ./.shared/darwin/libenry.dylib
   116          skip_cleanup: true
   117          on:
   118            tags: true
   119  
   120      - stage: Publish Maven
   121        language: scala
   122        jdk: oraclejdk8
   123  
   124        before_script:
   125          - if [[ -z "$TRAVIS_TAG" ]]; then echo "Skipping this build for non-tag builds."; exit 0; fi
   126          - cd java
   127          - make
   128          - curl -o ./shared/linux-x86-64/libenry.so -sL "https://github.com/$TRAVIS_REPO_SLUG/releases/download/$TRAVIS_TAG/libenry.so"
   129          - mkdir -p ./shared/darwin
   130          - curl -o ./shared/darwin/libenry.dylib -sL "https://github.com/$TRAVIS_REPO_SLUG/releases/download/$TRAVIS_TAG/libenry.dylib"
   131          - openssl aes-256-cbc -K $encrypted_a0e1c69dbbc7_key -iv $encrypted_a0e1c69dbbc7_iv -in key.asc.enc -out key.asc -d
   132          - gpg --no-default-keyring --primary-keyring ./project/.gnupg/pubring.gpg --secret-keyring ./project/.gnupg/secring.gpg --keyring ./project/.gnupg/pubring.gpg --fingerprint --import key.asc
   133  
   134        script:
   135          - make test # ensure the shared objects are functional
   136          - ./sbt publishLocal
   137          - ./sbt publishSigned
   138          - ./sbt sonatypeRelease
   139  
   140        before_deploy:
   141          - rm ./target/enry-java-*-javadoc.jar
   142          - rm ./target/enry-java-*-sources.jar
   143          - rm ./target/enry-java-*-tests.jar
   144          - rm ./target/enry-java-assembly-*.jar
   145  
   146        deploy:
   147          provider: releases
   148          api_key:
   149            secure: $GITHUB_TOKEN
   150          file_glob: true
   151          file: ./target/enry-java*.jar
   152          skip_cleanup: true
   153          on:
   154            tags: true