Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.gitlab-ci.yml 20.43 KiB
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Huawei Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#
# Note: While main CI operations are done on Eclipse Foundation infrastructure,
# a few extra operations are run on Huawei OSTC infrastructure, providing:
#
# - hosting Docker images on registry.ostc-eu.org
# - automatically updated mirror of source files in China
#
# The Docker images will move to Eclipse Foundation infrastructure when Docker
# registry becomes available on gitlab.eclipse.org.
#
# The mirror in China will need to be investigated further. Do we actually need
# it? Can it be supported by Eclipse Foundation infrastructure?
#

#
# Runner tags
#
# The meta-openharmony pipeline uses runner tags to control selection of the
# GitLab CI runners to use for each job
#
# cpu.heavy     - Can cause massive CPU load on multi-core systems
# cpu.light     - Does not cause much CPU load (single-threaded or I/O bound)
# region.europe - Run in Europe
# region.china  - Run in China
# mirror        - Deploy mirror files (combine with region.* tag)

# switch between branch pipelines and merge request pipelines
workflow:
  rules:
    # To use these pipelines, you must either enable Docker registry or set
    # CI_REGISTRY_IMAGE variable to an external Docker registry which hosts the
    # needed container images
    - if: $CI_REGISTRY_IMAGE == null
      when: never
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
    - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS
      when: never
    - if: $CI_COMMIT_BRANCH

include:
  - local: '.gitlab-ci/container.yml'
  - project: 'eclipsefdn/it/releng/gitlab-ci-templates'
    file: '/jobs/eca.gitlab-ci.yml'

variables:
  # Force the use of git clone to avoid odd git and repo problems
  GIT_STRATEGY: "clone"
  # output upload and download progress every 10 seconds
  TRANSFER_METER_FREQUENCY: "10s"
  # Use no compression for artifacts
  ARTIFACT_COMPRESSION_LEVEL: "fastest"
  # Use no compression for caches
  CACHE_COMPRESSION_LEVEL: "fastest"
  # The bitbake-builder Docker image registry path.
  #