Welcome to mirror list, hosted at ThFree Co, Russian Federation.

icap.yml « workflows « .github - github.com/nextcloud/files_antivirus.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 87c941b5d2b7e57f70d067e7c9546eca80a6e884 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
name: ICAP

on:
  pull_request:
  push:
    branches:
      - master
      - stable*

env:
  APP_NAME: files_antivirus

jobs:
  clam:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        php-versions: ['7.4']
        databases: ['sqlite']
        server-versions: [ 'stable24' ]

    name: icap-clmav

    services:
      clam:
        image: deepdiver/icap-clamav-service
        ports:
          - 1344:1344

    steps:
      - name: Checkout server
        uses: actions/checkout@v2
        with:
          repository: nextcloud/server
          ref: ${{ matrix.server-versions }}

      - name: Checkout submodules
        shell: bash
        run: |
          auth_header="$(git config --local --get http.https://github.com/.extraheader)"
          git submodule sync --recursive
          git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
      - name: Checkout app
        uses: actions/checkout@v2
        with:
          path: apps/${{ env.APP_NAME }}

      - name: Set up php ${{ matrix.php-versions }}
        uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php-versions }}
          tools: phpunit
          extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, zip, gd

      - name: Set up PHPUnit
        working-directory: apps/${{ env.APP_NAME }}
        run: composer i

      - name: Set up Nextcloud
        env:
          DB_PORT: 4444
        run: |
          mkdir data
          ./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
          ./occ app:enable --force ${{ env.APP_NAME }}
          ./occ config:system:set allow_local_remote_servers --type boolean --value true
      - name: PHPUnit
        working-directory: apps/${{ env.APP_NAME }}
        env:
          ICAP_HOST: localhost
          ICAP_PORT: 1344
          ICAP_REQUEST: avscan
          ICAP_HEADER: X-Infection-Found
        run: ./vendor/phpunit/phpunit/phpunit -c tests/phpunit.xml tests/Scanner/ICAPTest.php

  kaspersky:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        php-versions: ['7.4']
        databases: ['sqlite']
        server-versions: [ 'stable24' ]

    name: icap-kaspersky

    services:
      kaspersky:
        image: ghcr.io/icewind1991/kaspersky-cap:latest
        credentials:
          username: icewind1991
          password: ${{ secrets.ghcr_password }}
        ports:
          - 1344:1344

    steps:
      - name: Checkout server
        uses: actions/checkout@v2
        with:
          repository: nextcloud/server
          ref: ${{ matrix.server-versions }}

      - name: Checkout submodules
        shell: bash
        run: |
          auth_header="$(git config --local --get http.https://github.com/.extraheader)"
          git submodule sync --recursive
          git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
      - name: Checkout app
        uses: actions/checkout@v2
        with:
          path: apps/${{ env.APP_NAME }}

      - name: Set up php ${{ matrix.php-versions }}
        uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php-versions }}
          tools: phpunit
          extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, zip, gd

      - name: Set up PHPUnit
        working-directory: apps/${{ env.APP_NAME }}
        run: composer i

      - name: Set up Nextcloud
        env:
          DB_PORT: 4444
        run: |
          mkdir data
          ./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
          ./occ app:enable --force ${{ env.APP_NAME }}
          ./occ config:system:set allow_local_remote_servers --type boolean --value true
      - name: PHPUnit
        working-directory: apps/${{ env.APP_NAME }}
        env:
          ICAP_HOST: localhost
          ICAP_PORT: 1344
          ICAP_REQUEST: req
          ICAP_HEADER: X-Virus-ID
        run: ./vendor/phpunit/phpunit/phpunit -c tests/phpunit.xml tests/Scanner/ICAPTest.php