pytorch-lightning

Форк
0
/
_build-packages.yml 
68 строк · 1.9 Кб
1
name: Call building packages
2

3
on:
4
  workflow_call:
5
    inputs:
6
      artifact-name:
7
        description: "Unique name for collecting artifacts"
8
        required: true
9
        type: string
10
      pkg-names:
11
        description: "list package names to be build in json format"
12
        required: false
13
        type: string
14
        default: |
15
          ["lightning", "app", "fabric", "pytorch"]
16

17
defaults:
18
  run:
19
    shell: bash
20

21
jobs:
22
  init:
23
    runs-on: ubuntu-22.04
24
    steps:
25
      - uses: actions/checkout@v4
26
      - run: |
27
          mkdir dist && touch dist/.placeholder
28
      - name: Keep artifact
29
        id: keep-artifact
30
        run: python -c "print('DAYS=' + str(5 if '${{ github.event_name }}'.startswith('pull_request') else 0))" >> $GITHUB_OUTPUT
31
      - uses: actions/upload-artifact@v3
32
        with:
33
          name: ${{ inputs.artifact-name }}
34
          path: dist
35
          retention-days: ${{ steps.keep-artifact.outputs.DAYS }}
36

37
  build-packages:
38
    needs: init
39
    runs-on: ubuntu-22.04
40
    strategy:
41
      max-parallel: 1 # run sequential to prevent download/upload collisions
42
      matrix:
43
        pkg-name: ${{ fromJSON(inputs.pkg-names) }}
44
    steps:
45
      - uses: actions/checkout@v4
46
      - uses: actions/download-artifact@v3
47
        with:
48
          name: ${{ inputs.artifact-name }}
49
          path: pypi
50
      - uses: actions/setup-python@v5
51
        with:
52
          python-version: 3.9
53

54
      - run: python -c "print('NB_DIRS=' + str(2 if '${{ matrix.pkg-name }}' == 'pytorch' else 1))" >> $GITHUB_ENV
55
      - name: Build & check package
56
        uses: ./.github/actions/pkg-check
57
        with:
58
          pkg-name: ${{ matrix.pkg-name }}
59
          nb-dirs: ${{ env.NB_DIRS }}
60

61
      - run: |
62
          mkdir pypi/${{ matrix.pkg-name }}
63
          cp dist/* pypi/${{ matrix.pkg-name }}/
64

65
      - uses: actions/upload-artifact@v3
66
        with:
67
          name: ${{ inputs.artifact-name }}
68
          path: pypi
69

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.