add some first CI tests and pilots
Some checks failed
Test suites / selftest (pull_request) Failing after 5s
Test suites / reuse (pull_request) Failing after 17s

This commit is contained in:
2024-01-16 14:28:45 +01:00
parent 6d62bcf3ab
commit 9bbd95396c
4 changed files with 158 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
# SPDX-FileCopyrightText: 2023 DB Systel GmbH
#
# SPDX-License-Identifier: Apache-2.0
name: "Reusable Poetry build workflow"
inputs:
python:
default: "3.9"
description: "Value for 'python-version'"
required: false
type: string
runs:
using: "composite"
steps:
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: ${{ inputs.python }}
- name: Install dependencies
run: |
pip install poetry
poetry install --no-interaction
shell: bash

View File

@@ -0,0 +1,14 @@
name: Python package
on:
push:
tags:
- "v*.*.*"
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build and publish to pypi
uses: https://github.com/JRubics/poetry-publish@v1.17
with:
pypi_token: ${{ secrets.PYPI_TOKEN }}

104
.gitea/workflows/test.yaml Normal file
View File

@@ -0,0 +1,104 @@
# SPDX-FileCopyrightText: 2023 DB Systel GmbH
#
# SPDX-License-Identifier: Apache-2.0
name: Test suites
on:
push:
branches:
- main
pull_request:
jobs:
# # Test using the tool via poetry on different OSes and python versions
# test-os-python-matrix:
# runs-on: ${{ matrix.os }}
# strategy:
# max-parallel: 10
# # do not abort the whole test job if one combination in the matrix fails
# fail-fast: false
# matrix:
# python-version: ["3.9", "3.10", "3.11"]
# os: [ubuntu-20.04]
# include:
# - python-version: "3.9"
# os: macos-latest
# - python-version: "3.9"
# os: windows-latest
# steps:
# - uses: actions/checkout@v2
# - uses: ./.gitea/actions/poetrybuild
# - name: Execute seafile-mirror
# run: poetry run ossrfc --help
# # Test building the package and installing it via pip3
# test-build-install:
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v2
# - name: Set up Python
# uses: actions/setup-python@v2
# with:
# python-version: "3.9"
# - name: Install poetry
# run: pip install poetry
# - name: Build package
# run: poetry build
# - name: Install package
# run: pip3 install dist/oss_red_flag_checker-*.tar.gz
# - name: Run package
# run: |
# ossrfc --version
# ossrfc --help
# Run tool against own repository
selftest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/poetrybuild
- name: Check own repository in DEBUG mode
run: poetry run seafile-mirror --help
# pytest:
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v2
# - uses: ./.github/actions/poetrybuild
# - name: Test with pytest
# run: poetry run pytest
# pylint:
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v2
# - uses: ./.github/actions/poetrybuild
# - name: Lint with pylint
# run: poetry run pylint ossrfc/ tests/
# formatting:
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v2
# - uses: ./.github/actions/poetrybuild
# - name: Test formatting with isort and black
# run: |
# poetry run isort --check ossrfc/
# poetry run black .
# mypy:
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v2
# - uses: ./.github/actions/poetrybuild
# - name: Test typing with mypy
# run: poetry run mypy
reuse:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Check REUSE Compliance
uses: https://github.com/fsfe/reuse-action@v2