Skip to content

Build and Publish Core #38

Build and Publish Core

Build and Publish Core #38

# Copyright 2022 Expedia, 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.
name: Build and Publish Core
on:
workflow_dispatch:
inputs:
version:
description: 'Package version'
required: true
test:
description: 'Release to test?'
required: false
jobs:
build-and-publish-core:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Build core
working-directory: expediagroup/sdk/core
run: |
echo -e "[sdk-properties]\nversion=${{ github.event.inputs.version }}\n" > core.config
python3 -m venv env
source env/bin/activate
pip3 install -r "../../../requirements-dev.txt"
cp ../../../requirements-core.txt ./requirements.txt
python -m build --sdist --wheel
- name: Publish to PyPI
if: "${{ github.event.inputs.test == '' }}"
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PY_PI_TOKEN }}
packages_dir: expediagroup/sdk/core/dist
- name: Publish to Test PyPI
if: "${{ github.event.inputs.test != '' }}"
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository_url: https://test.pypi.org/legacy/
password: ${{ secrets.TEST_PY_PI_TOKEN }}
packages_dir: expediagroup/sdk/core/dist