Skip to content

Commit 7c2ca21

Browse files
authored
Merge pull request #172 from dwolfson/v6-prep
V6 prep - added data-engineer
2 parents 529cf57 + 5a1213d commit 7c2ca21

90 files changed

Lines changed: 5484 additions & 3605 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/workflows/release.yml‎

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Publish to PyPI and Release
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*' # Trigger on version tags like v1.0.0
7+
8+
jobs:
9+
test:
10+
name: Run Tests
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v4
14+
- name: Install uv
15+
uses: astral-sh/setup-uv@v3
16+
- name: Set up Python
17+
run: uv python install
18+
- name: Install dependencies
19+
run: uv sync --all-extras --dev
20+
- name: Run unit tests
21+
run: uv run pytest tests/ -m "not live_egeria"
22+
23+
build-n-publish:
24+
name: Build and Publish to PyPI
25+
needs: test
26+
runs-on: ubuntu-latest
27+
environment: release
28+
permissions:
29+
id-token: write # Required for OIDC trusted publishing
30+
contents: write # Required to create GitHub Release
31+
steps:
32+
- uses: actions/checkout@v4
33+
with:
34+
fetch-depth: 0
35+
36+
- name: Install uv
37+
uses: astral-sh/setup-uv@v3
38+
39+
- name: Build package
40+
run: uv build
41+
42+
- name: Publish to PyPI
43+
uses: pypa/gh-action-pypi-publish@release/v1
44+
45+
- name: Create GitHub Release
46+
uses: softprops/action-gh-release@v1
47+
with:
48+
files: dist/*
49+
generate_release_notes: true
50+
draft: false
51+
prerelease: false

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ open source Egeria project can be found at [Egeria Project](https://egeria-proje
1616

1717
This package is in active development. There is initial
1818
support for many of Egeria's services including configuration and operation. This client depends on
19-
This release supports Egeria 5.1 - although most of the functions may work on earlier versions of Egeria as well.
19+
This release supports Egeria 6.0 - although most of the functions may work on earlier versions of Egeria as well.
2020

2121
The code is organized to mimic the existing Egeria Java Client structure.
2222

‎RELEASING.md‎

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Release Process for pyegeria
2+
3+
We follow Semantic Versioning (SemVer). Releases are automated via GitHub Actions when a tag is pushed.
4+
5+
## Steps to Release
6+
7+
1. **Update Version**: Update the version in `pyproject.toml`.
8+
```bash
9+
# Example: bump to 1.1.0
10+
sed -i 's/version = ".*"/version = "1.1.0"/' pyproject.toml
11+
```
12+
2. **Commit and Push**:
13+
```bash
14+
git add pyproject.toml
15+
git commit -m "chore: release v1.1.0"
16+
git push origin main
17+
```
18+
3. **Create and Push Tag**:
19+
```bash
20+
git tag v1.1.0
21+
git push origin v1.1.0
22+
```
23+
4. **Verify**:
24+
* Monitor the "Actions" tab in GitHub.
25+
* Once complete, the package will appear on [PyPI](https://pypi.org/project/pyegeria/) and a new Release will be visible on GitHub.
26+
27+
## Best Practices
28+
- **PR Labels**: Use labels like `bug`, `enhancement`, and `documentation` on Pull Requests. The release notes generator uses these to categorize changes automatically.
29+
- **Trusted Publishing**: This repo uses OIDC. Ensure the GitHub environment `release` is configured in PyPI settings to allow publishing from this specific workflow.

0 commit comments

Comments
 (0)