conan-package.yml 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. ---
  2. name: conan-package
  3. # Exports the recipe, sources and binaries for Mac, Windows and Linux and upload these to the server such that these can
  4. # be used downstream.
  5. #
  6. # It should run on pushes against main or CURA-* branches, but it will only create the binaries for main and release
  7. # branches
  8. #
  9. # The version of the recipe has the following naming scheme:
  10. # - Pushed to main: <package_name>/<major>.<minor>.<patch>-alpha+<commits_since_last_version_tag>@stable/utlimaker
  11. # - Pushed to release branch: <package_name>/<major>.<minor>.<patch>-beta+<commits_since_last_version_tag>@stable/utlimaker
  12. # - Release tag: <package_name>/<major>.<minor>.<patch>@_/_
  13. # - Pushed to CURA-****_branch: <package_name>/<major>.<minor>.<patch>-CURA-****+<commits_since_last_version_tag>@testing/utlimaker
  14. # - Merge request: <package_name>/<major>.<minor>.<patch>-merge-***+<commits_since_last_version_tag>@testing/utlimaker
  15. # - Pull request: <package_name>/<major>.<minor>.<patch>-pull-***+<commits_since_last_version_tag>@testing/utlimaker
  16. on:
  17. push:
  18. paths:
  19. - 'plugins/**'
  20. - 'resources/**'
  21. - 'cura/**'
  22. - 'icons/**'
  23. - 'tests/**'
  24. - '.github/workflows/conan-package.yml'
  25. - 'requirements*.txt'
  26. branches:
  27. - main
  28. - 'CURA-*'
  29. - '[4-9].[0-9]'
  30. pull_request:
  31. paths:
  32. - 'plugins/**'
  33. - 'resources/**'
  34. - 'cura/**'
  35. - 'icons/**'
  36. - 'tests/**'
  37. - '.github/workflows/conan-package.yml'
  38. - 'requirements*.txt'
  39. branches:
  40. - main
  41. - '[4-9].[0-9]'
  42. jobs:
  43. conan-recipe-version:
  44. uses: ultimaker/cura/.github/workflows/conan-recipe-version.yml@CURA-9365_fix_building_cura_main
  45. with:
  46. project_name: cura
  47. conan-package-export:
  48. needs: [ conan-recipe-version ]
  49. uses: ultimaker/cura/.github/workflows/conan-recipe-export.yml@CURA-9365_fix_building_cura_main
  50. with:
  51. recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }}
  52. recipe_id_latest: ${{ needs.conan-recipe-version.outputs.recipe_id_latest }}
  53. runs_on: 'ubuntu-20.04'
  54. python_version: '3.10.4'
  55. conan_config_branch: 'CURA-9177_Fix_CI_CD'
  56. conan_logging_level: 'info'
  57. secrets: inherit
  58. conan-package-create-macos:
  59. # FIXME: Remove once merged to main
  60. if: ${{ github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'CURA-9365_fix_building_cura_main') }}
  61. needs: [ conan-recipe-version, conan-package-export ]
  62. uses: ultimaker/cura/.github/workflows/conan-package-create.yml@CURA-9365_fix_building_cura_main
  63. with:
  64. recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }}
  65. runs_on: 'macos-10.15'
  66. python_version: '3.10.4'
  67. conan_config_branch: 'CURA-9177_Fix_CI_CD'
  68. conan_logging_level: 'info'
  69. secrets: inherit
  70. conan-package-create-windows:
  71. # FIXME: Remove once merged to main
  72. if: ${{ github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'CURA-9365_fix_building_cura_main') }}
  73. needs: [ conan-recipe-version, conan-package-export ]
  74. uses: ultimaker/cura/.github/workflows/conan-package-create.yml@CURA-9365_fix_building_cura_main
  75. with:
  76. recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }}
  77. runs_on: 'windows-2022'
  78. python_version: '3.10.4'
  79. conan_config_branch: 'CURA-9177_Fix_CI_CD'
  80. conan_logging_level: 'info'
  81. secrets: inherit
  82. conan-package-create-linux:
  83. # FIXME: Remove once merged to main
  84. if: ${{ github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'CURA-9365_fix_building_cura_main') }}
  85. needs: [ conan-recipe-version, conan-package-export ]
  86. uses: ultimaker/cura/.github/workflows/conan-package-create.yml@CURA-9365_fix_building_cura_main
  87. with:
  88. recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }}
  89. runs_on: 'ubuntu-20.04'
  90. python_version: '3.10.4'
  91. conan_config_branch: 'CURA-9177_Fix_CI_CD'
  92. conan_logging_level: 'info'
  93. secrets: inherit
  94. notify:
  95. # FIXME: Remove once merged to main
  96. if: ${{ always() }}
  97. needs: [ conan-package-create-macos, conan-package-create-windows, conan-package-create-linux ]
  98. uses: ultimaker/cura/.github/workflows/notify.yml@CURA-9365_fix_building_cura_main
  99. with:
  100. success: ${{ contains(join(needs.*.result, ','), 'success') }}
  101. success_title: "New binaries created for ${{ github.repository }}"
  102. success_body: "New binaries created for ${{ github.repository }}"
  103. failure_title: "Failed to create binaries ${{ github.repository }}"
  104. failure_body: "Failed to create binaries ${{ github.repository }}"
  105. secrets: inherit