Skip to content

Commit

Permalink
Feature/owl2shacl (#15)
Browse files Browse the repository at this point in the history
* Adding owl2Shacl.py and associated test artifacts

* Adding owl2Shacl.py and associated test artifacts

* Adding owl2Shacl.py and associated test artifacts

* Comment out writing ont_graph to file

* tidying up a bit

* remove absolute paths

* rename process_n3_file to create_shacl and adding command line run option

* adding handling  of compound restrictions

* Changes to capitalise shape names and changes prints to logging in the tests

* Adding README.adoc and  a basic --dryrun option

* Adding README.adoc and basic ==dryrun option

* Fixing typos in the new README.adoc

* Fixing typos in the new README.adoc

* Fixing typos in the new README.adoc

* Fixing typos in the new README.adoc

* Add support to build and distribute the project

* feat: Allow Shacl-tool to be installed through python code repositories

* chore: Update on github actions

* chore: Add pip-tools to build requires, try install in pip-tools just in case

* chore: Pre-commit hook to validate, pyproject.toml, switch to pipx

* chore: pipx not really needed

* chore: Type in test build fix

* chore: Pre-commit hook, test, other build changes

* dsds

* zz

* chore: Fix pre commit hook

* chore: Add flake8 as github action script

* refactor(owl2Shacl.py): Refactor to address linting errors

* refactor(owl2Shacl.py): address liniting errors from flake8

* style: adress linting issues

* style: test linting

* style: test linting

* style: test linting

* refactor: Fix typo in github action

* test: temporary skip failing test - test file needs to be provided

* ci: Use actual branches for test-build.yml

* ci: release build added, publishing changes to AWS repostitory

* feat: support only python311+ drop requirements file

* ci: fix pulibsh file

* ci: fix pulibsh files

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository - no tests in wheel

* [Enhancement/owl2shacl] Make project pip installable (#4)

* feat: Allow Shacl-tool to be installed through python code repositories

* chore: Update on github actions

* chore: Add pip-tools to build requires, try install in pip-tools just in case

* chore: Pre-commit hook to validate, pyproject.toml, switch to pipx

* chore: pipx not really needed

* chore: Type in test build fix

* chore: Pre-commit hook, test, other build changes

* dsds

* zz

* chore: Fix pre commit hook

* chore: Add flake8 as github action script

* refactor(owl2Shacl.py): Refactor to address linting errors

* refactor(owl2Shacl.py): address liniting errors from flake8

* style: adress linting issues

* style: test linting

* style: test linting

* style: test linting

* refactor: Fix typo in github action

* test: temporary skip failing test - test file needs to be provided

* ci: Use actual branches for test-build.yml

* ci: release build added, publishing changes to AWS repostitory

* feat: support only python311+ drop requirements file

* ci: fix pulibsh file

* ci: fix pulibsh files

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository

* feature: Allow installation of owl2shack from telicent private repository - no tests in wheel

* ci: minor code formatting change

* chore(feature/owl2shacl): release 0.1.0

* feat: Refactor the project make module name more friendly. Allow to be importable

* refactor: Refactor toml to use correct module name

* refactor: W292 linting

* chore(feature/owl2shacl): release 0.2.0

* fix: Import error

* chore(feature/owl2shacl): release 0.2.1

* fix: Import error in shacltool

* chore(feature/owl2shacl): release 0.2.2

* fix: Typo causing imports to fail when running as standalone program

* chore(feature/owl2shacl): release 0.2.3

* chore: updated to latest workflows and code standards (#13)

* chore(feature/owl2shacl): release 0.2.4 (#14)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* ci: updated toml for pypi release

* ci: removed Jekyll pages workflow

* ci: removed Jekyll pages workflow

* ci: set to use master branch

---------

Signed-off-by: gnikolov95 <140396136+gnikolov95@users.noreply.github.com>
Co-authored-by: aplarge <andy.large@agnos.ai>
Co-authored-by: Georgi Nikolov <georgi.nikolov@telicent.io>
Co-authored-by: gnikolov95 <140396136+gnikolov95@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
  • Loading branch information
5 people authored Jun 3, 2024
1 parent a3792b3 commit 0b92b17
Show file tree
Hide file tree
Showing 20 changed files with 5,357 additions and 51 deletions.
16 changes: 16 additions & 0 deletions .github/workflows/create-release-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Create release PR

on:
push:
branches:
- "master"

permissions:
contents: write
pull-requests: write

jobs:
create-release-pr:
uses: telicent-oss/shared-workflows/.github/workflows/python-create-release-pr.yml@main
with:
DEFAULT_BRANCH: feature/owl2shacl
50 changes: 0 additions & 50 deletions .github/workflows/jekyll-gh-pages.yml

This file was deleted.

81 changes: 81 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
name: Release to PyPI

on:
push:
branches:
- "master"
paths:
- "CHANGELOG.md"
workflow_dispatch:

jobs:
test:
name: Python Tests
strategy:
fail-fast: true
matrix:
python-version: ["3.11", "3.12"]
uses: telicent-oss/shared-workflows/.github/workflows/python-ci-qa.yml@main
with:
PYTHON_VERSION: ${{ matrix.python-version }}
SKIP_BUILD: true

get-version:
uses: telicent-oss/shared-workflows/.github/workflows/python-get-version-number.yml@main

build-pypi-pkg:
name: Prepare and Build Release
uses: telicent-oss/shared-workflows/.github/workflows/python-build-pypi-pkg.yml@main
needs:
- get-version
with:
PACKAGE: shacltool
VERSION: ${{ needs.get-version.outputs.version }}

publish-to-pypi:
name: Publish Python distribution to PyPI
needs:
- build-pypi-pkg
- test
runs-on: ubuntu-latest
environment:
name: testpypi
url: https://test.pypi.org/p/telicent-owl2shacl
permissions:
id-token: write
steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
name: ${{ needs.build-pypi-pkg.outputs.application-sbom-artifact-name }}-dist
path: dist/

- name: Publish distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/

do-github-release:
name: Do GitHub Release
uses: telicent-oss/shared-workflows/.github/workflows/python-gh-release.yml@main
needs:
- get-version
- test
- build-pypi-pkg
with:
VERSION: ${{ needs.get-version.outputs.version }}

attach-sboms-to-release:
name: Attach SBOMs to release
needs:
- do-github-release
- get-version
- build-pypi-pkg
strategy:
matrix:
sbom-artifacts:
- ${{ needs.build-pypi-pkg.outputs.application-sbom-artifact-name }}
uses: telicent-oss/shared-workflows/.github/workflows/python-attach-sbom-to-release.yml@main
with:
SBOM_ARTIFACT: ${{ matrix.sbom-artifacts }}
VERSION: ${{ needs.get-version.outputs.version }}
22 changes: 22 additions & 0 deletions .github/workflows/python-test-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Python Test Build

on:
pull_request:
branches:
- "release-please*"
push:
branches-ignore:
- "master"
workflow_dispatch:

jobs:
test-and-build:
name: Python Test and Build
strategy:
fail-fast: true
matrix:
python-version: ["3.11", "3.12"]
uses: telicent-oss/shared-workflows/.github/workflows/python-ci-qa.yml@main
with:
PYTHON_VERSION: ${{ matrix.python-version }}
TEST_COMMAND: "pytest"
Loading

0 comments on commit 0b92b17

Please sign in to comment.