Skip to content

Commit 769ddff

Browse files
Merge pull request #13 from eclipse-keyple/improve-ci
Improve ci
2 parents dabee95 + 0352116 commit 769ddff

File tree

6 files changed

+43
-198
lines changed

6 files changed

+43
-198
lines changed

.github/scripts/check_version.sh

Lines changed: 0 additions & 35 deletions
This file was deleted.

.github/scripts/prepare_doxygen.sh

Lines changed: 0 additions & 38 deletions
This file was deleted.
Lines changed: 6 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,14 @@
1-
name: Build and test code
1+
name: Build and Test code
22

33
on:
44
push:
55
branches:
66
- main
77
pull_request:
88

9-
jobs:
10-
build:
11-
12-
strategy:
13-
matrix:
14-
env:
15-
- toolchain: "toolchain/gcc-linux.cmake"
16-
runner: ubuntu-latest
17-
generator: ""
18-
- toolchain: "toolchain/clang-macos.cmake"
19-
runner: macos-latest
20-
generator: ""
21-
- toolchain: "\"toolchain/clang-windows.cmake\""
22-
runner: windows-latest
23-
generator: "-G \"Visual Studio 17 2022\""
24-
25-
runs-on: ${{ matrix.env.runner }}
26-
27-
steps:
28-
- name: Check out repository
29-
uses: actions/checkout@v4
309

31-
- name: Install Linux reqs
32-
if: ${{ matrix.env.runner == 'ubuntu-latest' }}
33-
run: |
34-
sudo apt-get update
35-
sudo apt-get install -y clang cmake cppcheck clang-format clang-tidy gcc pre-commit
36-
37-
- name: Install macOS reqs
38-
if: ${{ matrix.env.runner == 'macos-latest' }}
39-
run: |
40-
brew install llvm cppcheck clang-format gcc pre-commit
41-
42-
- name: Build
43-
run: |
44-
cmake ${{ matrix.env.generator }} -B build -S . -DCMAKE_TOOLCHAIN_FILE=${{ matrix.env.toolchain }}
45-
cmake --build build -j8
46-
47-
- name: Run Linux/macOS tests
48-
if: ${{ matrix.env.runner == 'ubuntu-latest' || matrix.env.runner == 'macos-latest' }}
49-
run: |
50-
./build/bin/keypleservicecpplib_ut
10+
jobs:
11+
call-reusable-workflow:
12+
uses: eclipse-keyple/keyple-actions/.github/workflows/reusable-cpp-build-and-test.yml@main # NOSONAR - Same organization, trusted source
13+
with:
14+
test_executable_name: 'build/bin/keypleservicecpplib_ut'
Lines changed: 8 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,14 @@
1-
name: Publish API documentation
2-
1+
name: Publish API documentation (release)
32
on:
43
release:
54
types: [published]
65

6+
permissions:
7+
checks: write
8+
79
jobs:
810
publish-doc-release:
9-
runs-on: ubuntu-latest
10-
steps:
11-
- name: Check out repository code from ${{ github.repository }}/${{ github.ref }}
12-
uses: actions/checkout@v3
13-
with:
14-
fetch-depth: 0
15-
16-
- name: Make scripts executable
17-
run: chmod +x ./.github/scripts/*.sh
18-
19-
- name: Check version
20-
working-directory: .
21-
run: ./.github/scripts/check_version.sh $(echo "${{ github.ref }}" | sed -e "s,^refs/tags/,,")
22-
23-
- name: Patch Doxyfile
24-
working-directory: .
25-
run: ./.github/scripts/patch_doxyfile.sh ${{ env.PROJECT_VERSION }}
26-
27-
- name: Generate project documentation with Doxygen
28-
uses: eclipse-keyple/keyple-actions/doxygen@0c8593c4ed6b393642a1732af1fdef84d5e59540
29-
with:
30-
working-directory: .github/doxygen/
31-
doxyfile-path: ./Doxyfile
32-
33-
- name: Prepare Doxygen doc page locally
34-
working-directory: .
35-
run: ./.github/scripts/prepare_doxygen.sh ${{ env.PROJECT_VERSION }}
36-
37-
- name: Deploy to doc branch
38-
run: |
39-
git config --global user.name "Eclipse Keypop Bot"
40-
git config --global user.email "${{ github.repository }}-bot@eclipse.org"
41-
cd ${{ github.event.repository.name }}
42-
git remote set-url origin "https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git"
43-
git add .
44-
git commit -m "docs: update ${{ github.event.inputs.version || github.ref_name }} documentation"
45-
git push origin doc --force
46-
env:
47-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
11+
uses: eclipse-keyple/keyple-actions/.github/workflows/reusable-publish-doxygen.yml@main # NOSONAR - Same organization, trusted source
12+
with:
13+
version: ${{ github.event.inputs.version || github.ref_name }}
14+
secrets: inherit # NOSONAR - Same organization, trusted source
Lines changed: 6 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,14 @@
11
name: Publish API documentation (snapshot)
2-
32
on:
43
push:
54
branches:
65
- main
7-
- master
8-
- doxygen
6+
workflow_dispatch:
7+
8+
permissions:
9+
checks: write
910

1011
jobs:
1112
publish-doc-snapshot:
12-
runs-on: ubuntu-latest
13-
steps:
14-
- name: Check out repository code from ${{ github.repository }}/${{ github.ref }}
15-
uses: actions/checkout@v3
16-
with:
17-
fetch-depth: 0
18-
19-
- name: Make scripts executable
20-
run: chmod +x ./.github/scripts/*.sh
21-
22-
- name: Check version
23-
working-directory: .
24-
run: ./.github/scripts/check_version.sh
25-
26-
- name: Patch Doxyfile
27-
working-directory: .
28-
run: ./.github/scripts/patch_doxyfile.sh ${{ env.PROJECT_VERSION }}
29-
30-
- name: Generate project documentation with Doxygen
31-
uses: eclipse-keyple/keyple-actions/doxygen@0c8593c4ed6b393642a1732af1fdef84d5e59540
32-
with:
33-
working-directory: .github/doxygen/
34-
doxyfile-path: ./Doxyfile
35-
36-
- name: Prepare Doxygen doc page locally
37-
working-directory: .
38-
run: ./.github/scripts/prepare_doxygen.sh ${{ env.PROJECT_VERSION }}
39-
40-
- name: Deploy to doc branch
41-
run: |
42-
git config --global user.name "Eclipse Keypop Bot"
43-
git config --global user.email "${{ github.repository }}-bot@eclipse.org"
44-
cd ${{ github.event.repository.name }}
45-
git remote set-url origin "https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git"
46-
git add .
47-
git diff --quiet && git diff --staged --quiet || git commit -m "docs: update snapshot documentation"
48-
git push origin doc --force
49-
env:
50-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
13+
uses: eclipse-keyple/keyple-actions/.github/workflows/reusable-publish-doxygen.yml@main # NOSONAR - Same organization, trusted source
14+
secrets: inherit # NOSONAR - Same organization, trusted source

src/main/mainpage.dox

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/**
2+
* @mainpage Keyple Service C++ Library
3+
*
4+
* @section overview Overview
5+
*
6+
* The **Keyple Service C++ Library** contains the Keyple core components,
7+
* providing the fundamental services and orchestration layer for the
8+
* Keyple middleware architecture.
9+
*
10+
* @section key_features Key Features
11+
*
12+
* - Core Keyple service components
13+
* - Plugin and reader management
14+
* - Card selection and transaction orchestration
15+
* - Event-driven architecture support
16+
* - Service layer coordination
17+
*
18+
* @section resources Resources
19+
*
20+
* - **Documentation**: [keyple.org](https://keyple.org)
21+
* - **API Documentation**: [docs.keyple.org/keyple-service-cpp-lib](https://docs.keyple.org/keyple-service-cpp-lib)
22+
* - **Examples**: [github.com/eclipse/keyple-cpp-example](https://github.com/eclipse/keyple-cpp-example)
23+
*/

0 commit comments

Comments
 (0)