github.com/cozy/cozy-stack@v0.0.0-20240327093429-939e4a21320e/.github/workflows/go-tests.yml (about)

     1  name: Go tests
     2  on:
     3    push:
     4      branches:
     5        - master
     6      paths-ignore:
     7        - 'docs/**'
     8    pull_request:
     9      paths-ignore:
    10        - 'docs/**'
    11  jobs:
    12    test:
    13      runs-on: ubuntu-22.04
    14      services:
    15        redis:
    16          image: redis
    17          ports:
    18            - 6379:6379
    19      strategy:
    20        fail-fast: false
    21        matrix:
    22          include:
    23            # Recommended version
    24            - go-version: '1.22.x'
    25              couchdb-version: '3.3.3'
    26            # More exotic version
    27            - go-version: '1.19.x'
    28              couchdb-version: '3.2.3'
    29      steps:
    30        - name: Install CouchDB
    31          run: |
    32            curl https://couchdb.apache.org/repo/keys.asc | gpg --dearmor | sudo tee /usr/share/keyrings/couchdb-archive-keyring.gpg
    33            source /etc/os-release
    34            echo "deb [signed-by=/usr/share/keyrings/couchdb-archive-keyring.gpg] https://apache.jfrog.io/artifactory/couchdb-deb/ ${VERSION_CODENAME} main" | sudo tee /etc/apt/sources.list.d/couchdb.list
    35            sudo apt-get update
    36            sudo debconf-set-selections <<-EOF
    37                  couchdb couchdb/mode select standalone
    38                  couchdb couchdb/mode seen true
    39                  couchdb couchdb/bindaddress string 127.0.0.1
    40                  couchdb couchdb/bindaddress seen true
    41                  couchdb couchdb/adminpass password password
    42                  couchdb couchdb/adminpass seen true
    43                  couchdb couchdb/adminpass_again password password
    44                  couchdb couchdb/adminpass_again seen true
    45                  couchdb couchdb/cookie string elmo
    46                  couchdb couchdb/cookie seen true
    47            EOF
    48            DEBIAN_FRONTEND=noninteractive sudo apt-get install -y --force-yes couchdb=${{ matrix.couchdb-version }}*
    49            echo "COZY_COUCHDB_URL=http://admin:password@localhost:5984/" >> $GITHUB_ENV
    50  
    51        - name: Install ghostscript
    52          run: sudo apt install ghostscript
    53  
    54        - name: Change ImageMagick security policy
    55          run: sudo rm /etc/ImageMagick-6/policy.xml
    56  
    57        - name: Checkout repository
    58          uses: actions/checkout@v4
    59  
    60        - name: Setup Go
    61          uses: actions/setup-go@v5
    62          with:
    63            go-version: ${{ matrix.go-version }}
    64            cache: true
    65  
    66        - name: Run tests
    67          run: go test -p 1 -timeout 5m