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

conan-package.yml « workflows « .github - github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 4f0ec17ad5d476d8d0248e4c6e2bb1c803ecf7d2 (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
---
name: conan-package

# Exports the recipe, sources and binaries for Mac, Windows and Linux and upload these to the server such that these can
# be used downstream.
#
# It should run on pushes against main or CURA-* branches, but it will only create the binaries for main and release branches

on:
    workflow_dispatch:
        inputs:
            create_binaries_windows:
                required: true
                default: false
                description: 'create binaries Windows'
            create_binaries_linux:
                required: true
                default: false
                description: 'create binaries Linux'
            create_binaries_macos:
                required: true
                default: false
                description: 'create binaries Macos'

    push:
        paths:
            - 'plugins/**'
            - 'resources/**'
            - 'cura/**'
            - 'icons/**'
            - 'tests/**'
            - 'packaging/**'
            - '.github/workflows/conan-*.yml'
            - '.github/workflows/notify.yml'
            - '.github/workflows/requirements-conan-package.txt'
            - 'requirements*.txt'
            - 'conanfile.py'
            - 'conandata.yml'
            - 'GitVersion.yml'
            - '*.jinja'
        branches:
            - main
            - 'CURA-*'
            - '[0-9]+.[0-9]+'
        tags:
            - '[0-9]+.[0-9]+.[0-9]+'
            - '[0-9]+.[0-9]+-beta'

jobs:
    conan-recipe-version:
        uses: ultimaker/cura/.github/workflows/conan-recipe-version.yml@main
        with:
            project_name: cura

    conan-package-export-macos:
        needs: [ conan-recipe-version ]
        uses: ultimaker/cura/.github/workflows/conan-recipe-export.yml@main
        with:
            recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }}
            recipe_id_latest: ${{ needs.conan-recipe-version.outputs.recipe_id_latest }}
            recipe_id_pr: ${{ needs.conan-recipe-version.outputs.recipe_id_pr }}
            runs_on: 'macos-10.15'
            python_version: '3.10.x'
            conan_config_branch: 'master'
            conan_logging_level: 'info'
            conan_export_binaries: true
        secrets: inherit

    conan-package-export-linux:
        needs: [ conan-recipe-version ]
        uses: ultimaker/cura/.github/workflows/conan-recipe-export.yml@main
        with:
            recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }}
            recipe_id_latest: ${{ needs.conan-recipe-version.outputs.recipe_id_latest }}
            recipe_id_pr: ${{ needs.conan-recipe-version.outputs.recipe_id_pr }}
            runs_on: 'ubuntu-20.04'
            python_version: '3.10.x'
            conan_config_branch: 'master'
            conan_logging_level: 'info'
            conan_export_binaries: true
        secrets: inherit

    conan-package-export-windows:
        needs: [ conan-recipe-version ]
        uses: ultimaker/cura/.github/workflows/conan-recipe-export.yml@main
        with:
            recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }}
            recipe_id_latest: ${{ needs.conan-recipe-version.outputs.recipe_id_latest }}
            recipe_id_pr: ${{ needs.conan-recipe-version.outputs.recipe_id_pr }}
            runs_on: 'windows-2022'
            python_version: '3.10.x'
            conan_config_branch: 'master'
            conan_logging_level: 'info'
            conan_export_binaries: true
        secrets: inherit

    notify-export:
        if: ${{ always() }}
        needs: [ conan-recipe-version, conan-package-export-linux, conan-package-export-macos, conan-package-export-windows ]

        uses: ultimaker/cura/.github/workflows/notify.yml@main
        with:
            success: ${{ contains(join(needs.*.result, ','), 'success') }}
            success_title: "New Conan recipe exported in ${{ github.repository }}"
            success_body: "Exported ${{ needs.conan-recipe-version.outputs.recipe_id_full }}"
            failure_title: "Failed to export Conan Export in ${{ github.repository }}"
            failure_body: "Failed to exported ${{ needs.conan-recipe-version.outputs.recipe_id_full }}"
        secrets: inherit