github.com/keybase/client/go@v0.0.0-20241007131713-f10651d043c8/kbfs/appveyor.yml (about)

     1  environment:
     2    global:
     3      GOPATH: c:\work\
     4      KEYBASE_SERVER_URI: https://ci1.keybase.io
     5      CGO_ENABLED: 1
     6      GOARCH: amd64
     7      CC: c:\msys64\mingw64\bin\gcc
     8      CPATH: C:\msys64\include;C:\msys64\include\ddk
     9      GOVERSION: 1.21.6
    10  
    11  install:
    12    - systeminfo | findstr /C:"OS"
    13    - appveyor DownloadFile https://storage.googleapis.com/golang/go%GOVERSION%.windows-amd64.zip
    14    - ps: rmdir C:\go -Force -Recurse -Confirm:$false
    15    - 7z x go%GOVERSION%.windows-amd64.zip -o"C:\" -y > nul
    16    - set Path=c:\go\bin;%Path%
    17    # Stock Dokan 1.2
    18    - appveyor DownloadFile https://github.com/dokan-dev/dokany/releases/download/v1.2.1.2000/dokan.zip
    19    - 7z x dokan.zip -o"C:\dokan" -y -aoa > nul
    20    - copy C:\dokan\x64\Win8.1Release\sys\dokan1.sys C:\windows\system32\drivers\
    21    - pushd C:\dokan\x64\Release
    22    - copy dokan1.dll C:\windows\system32\
    23    - Bcdedit.exe -set TESTSIGNING ON
    24    - ps: Restart-Computer -Force
    25    - ps: Start-Sleep -s 10
    26    - cd C:\dokan\x64\Release
    27    - dokanctl /i d
    28    - sc query dokan1
    29  
    30  # clone directory
    31  clone_folder: c:\work\src\github.com\keybase\kbfs
    32  
    33  #---------------------------------#
    34  #       build configuration       #
    35  #---------------------------------#
    36  
    37  # build platform, i.e. x86, x64, Any CPU. This setting is optional.
    38  platform: x64
    39  os: Visual Studio 2015
    40  
    41  # scripts to run before build
    42  before_build:
    43  
    44  # scripts to run after build
    45  after_build:
    46  
    47  # to run your custom scripts instead of automatic MSBuild
    48  build_script:
    49    - SET PATH=%PATH%;c:\msys64\mingw64\bin;C:\msys64\bin
    50    - cd c:\work\src\github.com\keybase\kbfs
    51    - cd dokan
    52    - go test -i
    53    - go test -c
    54    - dokan.test
    55    - cd ..\kbfsdokan
    56    - go install
    57    - cd ..\kbfsgit\git-remote-keybase
    58    - go install
    59    - cd ..\..\test
    60    - go test -i
    61    - cd ..\kbpagesd
    62    - go install
    63    - cd ..\kbpagesconfig
    64    - go install
    65    - cd ..
    66    # Eventually there will be more tests, but let's just start with these for now
    67    #  - go list ./... | find /V "vendor" > testlist.txt
    68  
    69    # Keep the list below in sync with the result of
    70    #
    71    #   for x in $(find . -mindepth 1 \( -wholename ./vendor -o -wholename ./.git \) -prune -o -type d -print); do [ -n "$(ls -A $x/*_test.go 2>/dev/null)" ] && echo $x; done | sort
    72    # dokan dir is tested above.
    73    - echo github.com/keybase/client/go/kbfs/kbfsblock >> testlist.txt
    74    - echo github.com/keybase/client/go/kbfs/kbfscodec >> testlist.txt
    75    - echo github.com/keybase/client/go/kbfs/kbfscrypto >> testlist.txt
    76    - echo github.com/keybase/client/go/kbfs/kbfsedits >> testlist.txt
    77    - echo github.com/keybase/client/go/kbfs/kbfsgit >> testlist.txt
    78    - echo github.com/keybase/client/go/kbfs/kbfshash >> testlist.txt
    79    - echo github.com/keybase/client/go/kbfs/kbfsmd >> testlist.txt
    80    - echo github.com/keybase/client/go/kbfs/kbfssync >> testlist.txt
    81    - echo github.com/keybase/client/go/kbfs/kbpagesconfig >> testlist.txt
    82    - echo github.com/keybase/client/go/kbfs/libdokan >> testlist.txt
    83    - echo github.com/keybase/client/go/kbfs/libfs >> testlist.txt
    84    # libfuse is non-Windows-only.
    85    - echo github.com/keybase/client/go/kbfs/libgit >> testlist.txt
    86    - echo github.com/keybase/client/go/kbfs/libhttpserver >> testlist.txt
    87    - echo github.com/keybase/client/go/kbfs/libkbfs >> testlist.txt
    88    - echo github.com/keybase/client/go/kbfs/libpages >> testlist.txt
    89    - echo github.com/keybase/client/go/kbfs/libpages/config >> testlist.txt
    90    - echo github.com/keybase/client/go/kbfs/simplefs >> testlist.txt
    91    # test dir is tested below.
    92    - echo github.com/keybase/client/go/kbfs/tlf >> testlist.txt
    93    # TODO: Run the below tests with env KEYBASE_TEST_BSERVER_ADDR=tempdir.
    94    - for /f %%i in (testlist.txt) do (appveyor AddTest %%i -Outcome Running -Framework gotest -Filename %%i & go test -timeout 5m %%i && appveyor UpdateTest %%i -Outcome Passed -Framework gotest -Filename %%i -Duration 0) || (appveyor UpdateTest %%i -Outcome Failed -Framework gotest -Filename %%i -Duration 0 & exit /b 1)
    95    - cd test && go test -tags dokan -timeout 300s
    96  
    97  # to disable automatic builds
    98  #build: off
    99  
   100  # to run your custom scripts instead of automatic tests
   101  test_script:
   102  
   103  # only run on pull requests and pushes to master
   104  branches:
   105    only:
   106      - master