.gitlab-ci.yml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. image: docker:23.0.5
  2. variables:
  3. DOCKER_DRIVER: overlay2
  4. DOCKER_TLS_CERTDIR: "/certs"
  5. DOCKER_HOST: tcp://docker:2376
  6. OUTLIERS_DOCKER_SHA: $CI_REGISTRY_IMAGE/outliers:$CI_COMMIT_SHA
  7. OUTLIERS_DOCKER_BRANCH: $CI_REGISTRY_IMAGE/outliers:$CI_COMMIT_REF_NAME
  8. OUTLIERS_DOCKER_TAG: $CI_REGISTRY_IMAGE/outliers:$CI_COMMIT_TAG
  9. OUTLIERS_DOCKER_LATEST: $CI_REGISTRY_IMAGE/outliers:latest
  10. services:
  11. - docker:23.0.5-dind
  12. stages:
  13. - build
  14. - release
  15. before_script:
  16. - docker info
  17. - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
  18. build-outliers:
  19. stage: build
  20. script:
  21. - docker pull $OUTLIERS_DOCKER_BRANCH || true
  22. - docker build --cache-from $OUTLIERS_DOCKER_BRANCH -f ./tools/typeOperations/Dockerfile --tag $OUTLIERS_DOCKER_BRANCH ./tools/typeOperations
  23. - docker push $OUTLIERS_DOCKER_BRANCH
  24. rules:
  25. - if: $CI_COMMIT_TAG || $CI_COMMIT_BRANCH == "main"
  26. - if: $CI_PIPELINE_SOURCE == "push" || $CI_COMMIT_BRANCH == "dev"
  27. when: manual
  28. allow_failure: true
  29. build-tagged-outliers:
  30. stage: build
  31. script:
  32. # Create container tagged as 'latest'
  33. - docker pull $OUTLIERS_DOCKER_BRANCH || true
  34. - docker tag $OUTLIERS_DOCKER_BRANCH $OUTLIERS_DOCKER_LATEST
  35. - docker push $OUTLIERS_DOCKER_LATEST
  36. # Create image tagged with tag
  37. - docker tag $OUTLIERS_DOCKER_BRANCH $OUTLIERS_DOCKER_TAG
  38. - docker push $OUTLIERS_DOCKER_TAG
  39. rules:
  40. - if: $CI_COMMIT_TAG
  41. - if: $CI_PIPELINE_SOURCE == "push" || $CI_COMMIT_BRANCH == "dev"
  42. when: manual
  43. allow_failure: true
  44. build-ontology:
  45. image: gradle:8.1.1
  46. stage: build
  47. before_script:
  48. - ''
  49. script:
  50. - TOP="$(pwd)"
  51. - GRADLE_USER_HOME="$(pwd)/.gradle"
  52. - export GRADLE_USER_HOME
  53. - echo $TOP
  54. - echo $GRADLE_USER_HOME
  55. - apt-get update && apt-get -y install python3-pip && rm -rf /var/lib/apt/lists/*
  56. - python3 -m pip install bikeshed pyshacl
  57. - cd examples/oml/SystemDesignOntology2Layers
  58. - gradle build
  59. #- gradle startFuseki
  60. #- gradle owlQuery
  61. #- gradle owlReason
  62. #- gradle owlShacl
  63. #- gradle generateDocs
  64. #- gradle stopFuseki
  65. #- gradle publishToMavenLocal
  66. #- gradle publish
  67. #- cd $TOP/examples/oml/Drivetrain
  68. #- gradle build
  69. #- gradle publishToMavenLocal
  70. #- gradle publish
  71. cache:
  72. key: "$CI_COMMIT_REF_NAME"
  73. policy: push
  74. paths:
  75. - examples/oml/SystemDesignOntology2Layers/build
  76. #- examples/oml/Drivetrain/build
  77. - .gradle
  78. artifacts:
  79. paths:
  80. - examples/oml/SystemDesignOntology2Layers/build
  81. #- examples/oml/Drivetrain/build
  82. - ~/.m2
  83. rules:
  84. - if: $CI_COMMIT_BRANCH == "main"
  85. - if: $CI_PIPELINE_SOURCE == "push" || $CI_COMMIT_BRANCH == "dev"
  86. when: manual
  87. allow_failure: true