Skip to content

Conan CI Dependency Upload #19

Conan CI Dependency Upload

Conan CI Dependency Upload #19

Workflow file for this run

# Copyright (c) 2025 ByteDance Ltd. and/or its affiliates.
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
name: Conan CI Dependency Upload
on:
workflow_dispatch:
inputs:
build_type:
description: Build type to use for Conan install/export
required: true
type: choice
options: [Release, Debug]
default: Release
env:
CCACHE_DIR: /data/ccache-data
CCACHE_MAX_SIZE: '100G'
CI_NUM_THREADS: "16"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
upload:
runs-on: [ self-hosted, medium ]
container:
image: bolt-registry:5000/bolt-ci:20260114
options: --user root --init
volumes:
- /data/ccache-data:/data/ccache-data
services:
conanserver:
image: bolt-registry:5000/conan-server:latest
env:
CONAN_ADMIN_USER: ${{ secrets.CONAN_ADMIN_USERNAME }}
CONAN_ADMIN_PASSWORD: ${{ secrets.CONAN_ADMIN_PASSWORD }}
volumes:
- /data/conan-server-data:/var/conan/data
strategy:
matrix:
build_options:
- ""
- "-o '*:spark_compatible=True'"
- "-o '*:enable_s3=True'"
- "-o '*:enable_gcs=True'"
steps:
- name: Checkout
uses: actions/checkout@v6
- id: env-setup
uses: ./.github/actions/bolt-build-base
- name: Conan install
run: |
conan install ${{ matrix.build_options }} -s llvm-core/*:build_type=Release -s build_type=${{ inputs.build_type }} --build=missing
- name: Upload packages to conan remote
env:
CONAN_LOGIN_USERNAME: ${{ secrets.CONAN_ADMIN_USERNAME }}
CONAN_PASSWORD: ${{ secrets.CONAN_ADMIN_PASSWORD }}
run: |
conan remote auth ci
conan upload -r ci --confirm "*"