Commit 7d661dda authored by Jorge Moratinos's avatar Jorge Moratinos
Browse files

Merge branch 'PIPELINE7-include-open-discover-service-in-pipelines' into 'main'

Resolve "Include Open Discover Service in pipelines"

Closes #7

See merge request !14
parents ad1209e2 b03951e8
Loading
Loading
Loading
Loading

README.md

0 → 100644
+54 −0
Original line number Diff line number Diff line
# Pipeline Scripts

## Overview

This repository contains CI/CD pipeline configurations and scripts for **CAPIF** and **SDK** projects. These pipelines automate the build, test, and deployment processes, ensuring consistent and reliable software delivery across both projects.

## Contents

### CAPIF Pipelines
CI/CD pipeline configurations for the CAPIF project, including build automation, testing, and deployment workflows.

### SDK Pipelines
CI/CD pipeline configurations for the SDK project, including build automation, testing, and deployment workflows.

## Features

- Automated build and test execution
- Consistent deployment processes
- Multi-project support (CAPIF and SDK)
- Version control integration

## Release Notes

### [v5.0.1]

#### Added
- Initial pipeline scripts setup
- CAPIF CI/CD pipeline configuration
- SDK CI/CD pipeline configuration

#### Changed
- CAPIF pipelines adapted to use installation scripts provided by capif repository.
    - Included generation of environment file and publication at pipeline.
    - temporaly support to old CI/CD on deployment.
    - New variables related with production and development environments.
- Included generation of new Open Discover API service component image.

#### Fixed
- N/A

#### Deprecated
- N/A

#### Removed
- N/A

#### Security
- N/A

---

### [Version History]

Document your pipeline changes and updates here following the [Keep a Changelog](https://keepachangelog.com/) format.
+111 −87
Original line number Diff line number Diff line
@@ -234,93 +234,98 @@ main_build_and_push:
    CI_REGISTRY_USER: $CI_REGISTRY_USER
    CI_REGISTRY: $CI_REGISTRY
    CAPIF_DOCKER_REGISTRY: $CAPIF_DOCKER_REGISTRY
  script:
   - export TMP_PWD=$PWD
   - echo "TMP_PWD=$TMP_PWD"
   - echo "### docker login###"
   - echo "$CI_JOB_TOKEN" | docker login $CI_REGISTRY --username $CI_REGISTRY_USER --password-stdin
   - echo "----------------------------------------------------"
   - echo "### build and push nginx image###"
   - cd $TMP_PWD/services/nginx/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/nginx:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/nginx:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push register image###"
   - cd $TMP_PWD/services/register/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/register:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/register:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Access_Control_Policy_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Access_Control_Policy_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-access-control-policy-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-access-control-policy-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_API_Invoker_Management_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_API_Invoker_Management_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-invoker-management-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-invoker-management-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_API_Provider_Management_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_API_Provider_Management_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-provider-management-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-provider-management-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Auditing_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Auditing_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-auditing-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-auditing-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Discover_Service_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Discover_Service_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-discover-service-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-discover-service-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Events_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Events_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-events-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-events-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Logging_API_Invocation_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Logging_API_Invocation_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-logging-api-invocation-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-logging-api-invocation-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Publish_Service_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Publish_Service_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-publish-service-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-publish-service-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Routing_Info_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Routing_Info_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-routing-info-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-routing-info-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push TS29222_CAPIF_Security_API image###"
   - cd $TMP_PWD/services/TS29222_CAPIF_Security_API/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-security-api:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-security-api:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push vault image###"
   - cd $TMP_PWD/services/vault/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/vault:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/vault:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push helper image###"
   - cd $TMP_PWD/services/helper/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/helper:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/helper:$CI_COMMIT_REF_SLUG   
   - echo "----------------------------------------------------"
   - echo "### build and push mock-server image###"
   - cd $TMP_PWD/services/mock_server/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/mock-server:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/mock-server:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"
   - echo "### build and push celery image###"
   - cd $TMP_PWD/services/celery/
   - docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/celery:$CI_COMMIT_REF_SLUG .
   - docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/celery:$CI_COMMIT_REF_SLUG
   - echo "----------------------------------------------------"   
   - docker logout $CI_REGISTRY
  script: |
          export TMP_PWD=$PWD
          echo "TMP_PWD=$TMP_PWD"
          echo "### docker login###"
          echo "$CI_JOB_TOKEN" | docker login $CI_REGISTRY --username $CI_REGISTRY_USER --password-stdin
          echo "----------------------------------------------------"
          echo "### build and push nginx image###"
          cd $TMP_PWD/services/nginx/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/nginx:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/nginx:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push register image###"
          cd $TMP_PWD/services/register/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/register:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/register:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Access_Control_Policy_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Access_Control_Policy_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-access-control-policy-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-access-control-policy-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_API_Invoker_Management_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_API_Invoker_Management_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-invoker-management-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-invoker-management-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_API_Provider_Management_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_API_Provider_Management_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-provider-management-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-api-provider-management-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Auditing_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Auditing_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-auditing-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-auditing-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Discover_Service_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Discover_Service_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-discover-service-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-discover-service-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Events_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Events_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-events-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-events-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Logging_API_Invocation_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Logging_API_Invocation_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-logging-api-invocation-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-logging-api-invocation-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Publish_Service_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Publish_Service_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-publish-service-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-publish-service-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Routing_Info_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Routing_Info_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-routing-info-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-routing-info-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Security_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Security_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-security-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-security-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push vault image###"
          cd $TMP_PWD/services/vault/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/vault:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/vault:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push helper image###"
          cd $TMP_PWD/services/helper/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/helper:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/helper:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push mock-server image###"
          cd $TMP_PWD/services/mock_server/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/mock-server:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/mock-server:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push celery image###"
          cd $TMP_PWD/services/celery/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/celery:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/celery:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          echo "### build and push TS29222_CAPIF_Open_Discover_Service_API image###"
          cd $TMP_PWD/services/TS29222_CAPIF_Open_Discover_Service_API/
          docker build -t $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-open-discover-service-api:$CI_COMMIT_REF_SLUG .
          docker push $CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-open-discover-service-api:$CI_COMMIT_REF_SLUG
          echo "----------------------------------------------------"
          docker logout $CI_REGISTRY
  <<: *main_common

cvs_nginx:
@@ -563,6 +568,24 @@ cvs_celery:
    SECURE_LOG_LEVEL: debug
  <<: *main_dnd

cvs_ocf_open_discover_service_api:
  stage: main_container_scanning
  needs:
    - main_build_and_push
  before_script:
   - export TMP_PWD=$PWD
   - echo "TMP_PWD=$TMP_PWD"
   - git clone https://oauth2:${CI_JOB_TOKEN}@labs.etsi.org/rep/ocf/capif.git
  extends: container_scanning
  variables:
    CS_DEFAULT_BRANCH_IMAGE: "$CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-open-discover-service-api:$CI_COMMIT_REF_SLUG"
    CS_IMAGE: "$CI_REGISTRY/ocf/capif/$CI_COMMIT_REF_SLUG/ocf-open-discover-service-api:$CI_COMMIT_REF_SLUG"
    CS_REGISTRY_USER: $CI_REGISTRY_USER
    CS_REGISTRY_PASSWORD: $CAPIF_DOCKER_REGISTRY
    SECURE_LOG_LEVEL: debug
  <<: *main_dnd


deploy_ocf_main:
  stage: deploy_ocf_main
  before_script:
@@ -585,6 +608,7 @@ deploy_ocf_main:
    - cvs_ocf_publish_service_api
    - cvs_ocf_routing_info_api
    - cvs_ocf_security_api
    - cvs_ocf_open_discover_service_api
    - cvs_vault
    - cvs_celery
  <<: *main_common
+6 −1
Original line number Diff line number Diff line
@@ -775,6 +775,8 @@ deploy_ocf_dev:
#    - if: $CI_COMMIT_BRANCH
  script:
    - |
      set -x
      echo "### deploying ocf to dev environment ###" > deploy_dev.log
      helm version
      kubectl version --output=yaml
      echo "### setting kubeconfig###"
@@ -1022,12 +1024,15 @@ deploy_ocf_dev:
        ./helm/scripts/install_capif.sh $NAMESPACE_DEV
        kubectl delete pod --field-selector=status.phase=Failed -n $NAMESPACE_DEV
        kubectl delete pod --field-selector=status.phase=Succeeded -n $NAMESPACE_DEV

        echo "NAMESPACE_DEV=$NAMESPACE_DEV"
        ls -l helm/scripts/envs/
        ls -l helm/scripts/envs/ >> deploy_dev.log
      fi
  artifacts:
    name: "$NAMESPACE_DEV.template"
    paths:
      - helm/scripts/envs/$NAMESPACE_DEV.template
      - deploy_dev.log
    expire_in: 1 day
    when: always

+99 −91

File changed.

Preview size limit exceeded, changes collapsed.

+198 −182

File changed.

Preview size limit exceeded, changes collapsed.

Loading