Skip to content

Commit 7977697

Browse files
committed
Update file(s) "/.github" from "ZigRazor/CXXGraph"
1 parent 41eead4 commit 7977697

19 files changed

+762
-0
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
25+
26+
**Desktop (please complete the following information):**
27+
- OS: [e.g. iOS]
28+
- Browser [e.g. chrome, safari]
29+
- Version [e.g. 22]
30+
31+
**Smartphone (please complete the following information):**
32+
- Device: [e.g. iPhone6]
33+
- OS: [e.g. iOS8.1]
34+
- Browser [e.g. stock browser, safari]
35+
- Version [e.g. 22]
36+
37+
**Additional context**
38+
Add any other context about the problem here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/dependabot.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5+
6+
version: 2
7+
updates:
8+
# Maintain dependencies for GitHub Actions
9+
- package-ecosystem: "github-actions"
10+
directory: "/"
11+
schedule:
12+
interval: "weekly"

.github/labeler.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Add 'repo' label to any root file changes
2+
repo:
3+
- '*'
4+
5+
# Add 'test' label to any change to *.spec.js files within the source dir
6+
test:
7+
- test/**
8+
9+
# Add 'automated workflows' label to any change to workflows files
10+
automated workflows:
11+
- .github/workflows//**
12+
13+
# Add 'core` label to any change to include files
14+
core:
15+
- include/**
16+
17+
# Add 'documentation` label to any change to docs files
18+
documentation:
19+
- docs/**

.github/pull_request_template.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
2+
*A good pull request has the following information:*
3+
- A reference to a related issue in your repository.
4+
- A description of the changes proposed in the pull request.
5+
- @mentions of the person or team responsible for reviewing proposed changes. ( optional )

.github/workflows/Code_Coverage.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# This is a basic workflow that is manually triggered
2+
3+
name: Code Coverage
4+
5+
on:
6+
push:
7+
branches: [ master ]
8+
pull_request:
9+
branches: [ master ]
10+
11+
jobs:
12+
codacy-coverage-reporter:
13+
runs-on: ubuntu-latest
14+
name: codecov-coverage-reporter
15+
steps:
16+
#- name: Install gtest manually
17+
# run: sudo apt-get install libgtest-dev
18+
19+
#- name: Install benchmark manually
20+
# run: |
21+
# git clone https://github.com/google/benchmark.git
22+
# git clone https://github.com/google/googletest.git benchmark/googletest
23+
# cd benchmark
24+
# cmake -E make_directory "build"
25+
# cmake -E chdir "build" cmake -DCMAKE_BUILD_TYPE=Release ../
26+
# cmake --build "build" --config Release
27+
# sudo cmake --build "build" --config Release --target install
28+
29+
- name: Update apt repo
30+
run: sudo apt-get update
31+
32+
- name: Install tools manually
33+
run: sudo apt-get install lcov gcovr
34+
35+
- uses: actions/checkout@v4
36+
37+
- name: Configure CMake
38+
run: cmake -DTEST=ON -DCODE_COVERAGE=ON -B ${{github.workspace}}/build; sudo apt-get install lcov gcovr
39+
40+
- name: Build
41+
# Build your program with the given configuration
42+
run: cmake --build ${{github.workspace}}/build
43+
44+
- name: run
45+
working-directory: ${{github.workspace}}/build/test
46+
run: ./test_exe
47+
48+
- name: create Report
49+
working-directory: ${{github.workspace}}/build/test
50+
run: lcov --capture --directory .. --output-file coverage.info
51+
52+
- uses: codecov/[email protected]
53+
with:
54+
#token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
55+
file: ${{github.workspace}}/build/test/coverage.info # optional
56+
flags: unittests # optional
57+
name: codecov-umbrella # optional
58+
fail_ci_if_error: true # optional (default = false)
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Copy Github Action on Other Branch
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
#paths-ignore:
7+
#- '.github/**' # Ignore changes towards the .github directory
8+
paths:
9+
- '.github'
10+
branches:
11+
- master # Only trigger on the master branch
12+
13+
jobs:
14+
build:
15+
runs-on: [ubuntu-latest]
16+
steps:
17+
- name: Copy
18+
uses: andstor/copycat-action@v3
19+
with:
20+
personal_token: ${{ secrets.PERSONAL_TOKEN }}
21+
src_path: /.github
22+
dst_path: /.github
23+
src_branch: master
24+
dst_branch: WebSite
25+
username: ZigRazor
26+
27+
dst_owner: ZigRazor
28+
dst_repo_name: CXXGraph

.github/workflows/Doxygen.yml

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# This is a basic workflow to help you get started with Actions
2+
3+
name: Doxygen
4+
5+
# Controls when the workflow will run
6+
on:
7+
# Triggers the workflow on push or pull request events but only for the master branch
8+
push:
9+
paths:
10+
- 'docs/Doxyfile'
11+
branches: [ master ]
12+
13+
# Allows you to run this workflow manually from the Actions tab
14+
workflow_dispatch:
15+
16+
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
17+
jobs:
18+
# This workflow contains a single job called "build"
19+
build:
20+
# The type of runner that the job will run on
21+
runs-on: ubuntu-latest
22+
23+
# Steps represent a sequence of tasks that will be executed as part of the job
24+
steps:
25+
- uses: actions/checkout@v4
26+
with:
27+
token: ${{ secrets.PERSONAL_TOKEN }}
28+
- name: Generate build number
29+
id: buildnumber
30+
uses: einaregilsson/build-number@v3
31+
with:
32+
token: ${{secrets.PERSONAL_TOKEN}}
33+
# Now you can pass ${{ steps.buildnumber.outputs.build_number }} to the next steps.
34+
- name: Checkout New Branch
35+
run: |
36+
git fetch
37+
git checkout -b documentation-update-${{ steps.buildnumber.outputs.build_number }}
38+
git push origin documentation-update-${{ steps.buildnumber.outputs.build_number }}
39+
40+
- name: Doxygen Action
41+
uses: mattnotmitt/[email protected]
42+
with:
43+
# Working directory
44+
working-directory: 'docs/'
45+
# Path to Doxyfile
46+
doxyfile-path: './Doxyfile'
47+
# Generate latex documentation
48+
#enable-latex: # optional
49+
# Extra alpine packages for the build environment
50+
#additional-packages: # optional, default is
51+
- name: commit changes
52+
run: |
53+
git config --global user.name "ZigRazor"
54+
git config --global user.email "[email protected]"
55+
git add docs
56+
git commit -m "Updated Doxygen Documentation"
57+
58+
- name: Push changes
59+
uses: ad-m/github-push-action@master
60+
with:
61+
github_token: ${{ secrets.PERSONAL_TOKEN }}
62+
branch: documentation-update-${{ steps.buildnumber.outputs.build_number }}
63+
64+
- name: Create Pull Request
65+
uses: thomaseizinger/[email protected]
66+
with:
67+
# A GitHub API token
68+
github_token: ${{ secrets.PERSONAL_TOKEN }}
69+
# The head ref that should be pulled into base.
70+
head: documentation-update-${{ steps.buildnumber.outputs.build_number }}
71+
# The title of the pull request.
72+
title: Documentation Update
73+
# The base branch for the pull request. Defaults to master.
74+
#base: # optional
75+
# Whether this should be a draft PR.
76+
draft: false # optional
77+
# The body of the pull request.
78+
body: Automatic Documentation Update # optional
79+
# A comma-separated list of GitHub logins that should review this PR.
80+
#reviewers: #optional

.github/workflows/benchmark.yml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
name: Benchmark
2+
on:
3+
push:
4+
branches: [ master ]
5+
#pull_request:
6+
# branches: [ master ]
7+
8+
env:
9+
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
10+
BUILD_TYPE: Release
11+
12+
jobs:
13+
benchmark:
14+
name: Performance regression check
15+
runs-on: ubuntu-latest
16+
steps:
17+
#- name: Install gtest manually
18+
# run: sudo apt-get install libgtest-dev
19+
20+
#- name: Install benchmark manually
21+
# run: |
22+
# git clone https://github.com/google/benchmark.git
23+
# git clone https://github.com/google/googletest.git benchmark/googletest
24+
# cd benchmark
25+
# cmake -E make_directory "build"
26+
# cmake -E chdir "build" cmake -DCMAKE_BUILD_TYPE=Release ../
27+
# cmake --build "build" --config Release
28+
# sudo cmake --build "build" --config Release --target install
29+
- uses: actions/checkout@v4
30+
31+
- name: Configure CMake
32+
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
33+
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
34+
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DBENCHMARK=ON
35+
36+
- name: Build
37+
# Build your program with the given configuration
38+
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -j
39+
- name: Download previous benchmark data
40+
uses: actions/cache@v4
41+
with:
42+
path: ./cache
43+
key: ${{ runner.os }}-benchmark
44+
45+
- name: Benchmarking
46+
working-directory: ${{github.workspace}}/build
47+
run: ./benchmark --benchmark_format=json --benchmark_out=benchmark_result.json
48+
# Run `github-action-benchmark` action
49+
- name: Store benchmark result
50+
uses: rhysd/github-action-benchmark@v1
51+
with:
52+
# What benchmark tool the output.txt came from
53+
tool: 'googlecpp'
54+
# Where the output from the benchmark tool is stored
55+
output-file-path: ${{github.workspace}}/build/benchmark_result.json
56+
# Where the previous data file is stored
57+
#external-data-json-path: ./cache/benchmark-data.json
58+
# Workflow will fail when an alert happens
59+
fail-on-alert: true
60+
# Upload the updated cache file for the next job by actions/cache
61+
# Personal access token to deploy GitHub Pages branch
62+
github-token: ${{ secrets.PERSONAL_TOKEN }}
63+
# Push and deploy GitHub pages branch automatically
64+
auto-push: true
65+
# Enable alert commit comment
66+
comment-on-alert: true
67+
# Mention @rhysd in the commit comment
68+
alert-comment-cc-users: '@ZigRazor'

0 commit comments

Comments
 (0)