.github/workflows/prep_sources.yml
author Edouard Tisserant <edouard.tisserant@gmail.com>
Mon, 09 Oct 2023 16:41:10 +0200
changeset 124 9304b56075c2
parent 123 032aaa29f498
child 125 08331ced745f
permissions -rw-r--r--
Snapcraft: Rename SNAPCRAFT_* to new CRAFT_*
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     1
name: Prepare sources
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     2
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     3
on:
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     4
  workflow_call:
96
52b64ebc1970 GH CD: seems that reusable workflow outputs can't make their way through.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 95
diff changeset
     5
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     6
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     7
jobs:
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     8
  get_sources:
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
     9
    runs-on: ubuntu-latest
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    10
76
1ed6c9812863 GH CI : adapt to workflow syntax restrictions
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 73
diff changeset
    11
    env:
123
032aaa29f498 Add Python3 in Snap build + doc fixes
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 121
diff changeset
    12
        beremiz_revisionid: 5826f71a5f7fe98758525b22fdcff19b3a811f86
121
9dd76a5bbc2a Upgrade revisions used for GitHub build
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 119
diff changeset
    13
        matiec_revisionid: e5be6a1f036d21cd7b5ee75ef352783a7cfcc1a7
76
1ed6c9812863 GH CI : adapt to workflow syntax restrictions
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 73
diff changeset
    14
        canfestival_revisionid: 12a05e422666c738d1312259703f80150c747cb5
121
9dd76a5bbc2a Upgrade revisions used for GitHub build
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 119
diff changeset
    15
        Modbus_revisionid: 4d7d67a8e911d744165709c20a254b5cb924ec71
123
032aaa29f498 Add Python3 in Snap build + doc fixes
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 121
diff changeset
    16
        # v1.3.7
121
9dd76a5bbc2a Upgrade revisions used for GitHub build
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 119
diff changeset
    17
        open62541_revisionid: b8ac9e77f703e6ba5c012b886a8821037503daa6
76
1ed6c9812863 GH CI : adapt to workflow syntax restrictions
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 73
diff changeset
    18
1ed6c9812863 GH CI : adapt to workflow syntax restrictions
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 73
diff changeset
    19
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    20
    steps:
99
0623d6d4616b GH CD: chechout all projects, even self from prep_sources.yml so that revisions.txt is not too old for Makefile.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 98
diff changeset
    21
    - uses: actions/checkout@v3
0623d6d4616b GH CD: chechout all projects, even self from prep_sources.yml so that revisions.txt is not too old for Makefile.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 98
diff changeset
    22
      with:
0623d6d4616b GH CD: chechout all projects, even self from prep_sources.yml so that revisions.txt is not too old for Makefile.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 98
diff changeset
    23
          path: beremiz_public_dist
0623d6d4616b GH CD: chechout all projects, even self from prep_sources.yml so that revisions.txt is not too old for Makefile.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 98
diff changeset
    24
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    25
    # repositories are directly checked out where Makerfile expects them to be
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    26
    - uses: actions/checkout@v3
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    27
      with:
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    28
          repository: beremiz/beremiz
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    29
          ref: ${{ env.beremiz_revisionid }}
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    30
          path: build/sources/beremiz
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    31
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    32
    - uses: actions/checkout@v3
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    33
      with:
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    34
          repository: beremiz/matiec
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    35
          ref: ${{ env.matiec_revisionid }}
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    36
          path: build/sources/matiec
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    37
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    38
    - uses: actions/checkout@v3
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    39
      with:
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    40
          repository: beremiz/canfestival
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    41
          ref: ${{ env.canfestival_revisionid }}
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    42
          path: build/sources/canfestival
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    43
84
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    44
    - uses: actions/checkout@v3
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    45
      with:
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    46
          repository: beremiz/Modbus
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    47
          ref: ${{ env.Modbus_revisionid }}
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    48
          path: build/sources/Modbus
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    49
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    50
    - uses: actions/checkout@v3
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    51
      with:
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    52
          repository: open62541/open62541
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    53
          ref: ${{ env.open62541_revisionid }}
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    54
          path: build/sources/open62541
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    55
96
52b64ebc1970 GH CD: seems that reusable workflow outputs can't make their way through.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 95
diff changeset
    56
    - name: Keep Makfile satisfied and generate revisions.txt
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    57
      run: |
96
52b64ebc1970 GH CD: seems that reusable workflow outputs can't make their way through.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 95
diff changeset
    58
        touch build/sources/beremiz_stamp
52b64ebc1970 GH CD: seems that reusable workflow outputs can't make their way through.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 95
diff changeset
    59
        touch build/sources/matiec_stamp
52b64ebc1970 GH CD: seems that reusable workflow outputs can't make their way through.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 95
diff changeset
    60
        touch build/sources/canfestival_stamp
52b64ebc1970 GH CD: seems that reusable workflow outputs can't make their way through.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 95
diff changeset
    61
        touch build/sources/Modbus_stamp
52b64ebc1970 GH CD: seems that reusable workflow outputs can't make their way through.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 95
diff changeset
    62
        touch build/sources/open62541_stamp
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    63
        touch build/sources/beremiz_src
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    64
        touch build/sources/matiec_src
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    65
        touch build/sources/canfestival_src
84
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    66
        touch build/sources/Modbus_src
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    67
        touch build/sources/open62541_src
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    68
        touch build/own_sources
98
54c0e2662dd3 revisions.txt is expected in $CWD When building Windows installer, in $CWD/sources for Snap. Deal with it for now.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 97
diff changeset
    69
        cat >> build/revisions.txt <<EOF
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    70
        beremiz_public_dist ${{ github.sha }}
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    71
        beremiz ${{ env.beremiz_revisionid }}
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    72
        matiec ${{ env.matiec_revisionid }}
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    73
        canfestival ${{ env.canfestival_revisionid }}
84
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    74
        Modbus ${{ env.Modbus_revisionid }}
8e01f3bb59df GH CD: Add Modbus and open62541 sources.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 77
diff changeset
    75
        open62541 ${{ env.open62541_revisionid }}
68
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    76
        EOF
8eb533b797be GH action : split workflows for later re-use of source provisioning.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
diff changeset
    77
97
4dd65c75e651 GH CD: Seriously ? https://github.com/actions/upload-artifact#maintaining-file-permissions-and-case-sensitive-files
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 96
diff changeset
    78
    - name: Tar files
99
0623d6d4616b GH CD: chechout all projects, even self from prep_sources.yml so that revisions.txt is not too old for Makefile.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 98
diff changeset
    79
      run: tar -cvf sources.tar .
97
4dd65c75e651 GH CD: Seriously ? https://github.com/actions/upload-artifact#maintaining-file-permissions-and-case-sensitive-files
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 96
diff changeset
    80
77
2f3d1cd0bd64 GH CI : use artifacts to get data flowing from one workflow to the other
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 76
diff changeset
    81
    - name: Upload source artifact
2f3d1cd0bd64 GH CI : use artifacts to get data flowing from one workflow to the other
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 76
diff changeset
    82
      uses: actions/upload-artifact@v3
2f3d1cd0bd64 GH CI : use artifacts to get data flowing from one workflow to the other
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 76
diff changeset
    83
      with:
2f3d1cd0bd64 GH CI : use artifacts to get data flowing from one workflow to the other
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 76
diff changeset
    84
        name: source_package
99
0623d6d4616b GH CD: chechout all projects, even self from prep_sources.yml so that revisions.txt is not too old for Makefile.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 98
diff changeset
    85
        path: sources.tar