Skip to content

Commit

Permalink
Update file(s) "/.github" from "ZigRazor/CXXGraph"
Browse files Browse the repository at this point in the history
  • Loading branch information
ZigRazor committed Mar 7, 2024
1 parent 41eead4 commit 7977697
Show file tree
Hide file tree
Showing 19 changed files with 762 additions and 0 deletions.
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
19 changes: 19 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Add 'repo' label to any root file changes
repo:
- '*'

# Add 'test' label to any change to *.spec.js files within the source dir
test:
- test/**

# Add 'automated workflows' label to any change to workflows files
automated workflows:
- .github/workflows//**

# Add 'core` label to any change to include files
core:
- include/**

# Add 'documentation` label to any change to docs files
documentation:
- docs/**
5 changes: 5 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

*A good pull request has the following information:*
- A reference to a related issue in your repository.
- A description of the changes proposed in the pull request.
- @mentions of the person or team responsible for reviewing proposed changes. ( optional )
58 changes: 58 additions & 0 deletions .github/workflows/Code_Coverage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# This is a basic workflow that is manually triggered

name: Code Coverage

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
codacy-coverage-reporter:
runs-on: ubuntu-latest
name: codecov-coverage-reporter
steps:
#- name: Install gtest manually
# run: sudo apt-get install libgtest-dev

#- name: Install benchmark manually
# run: |
# git clone https://github.com/google/benchmark.git
# git clone https://github.com/google/googletest.git benchmark/googletest
# cd benchmark
# cmake -E make_directory "build"
# cmake -E chdir "build" cmake -DCMAKE_BUILD_TYPE=Release ../
# cmake --build "build" --config Release
# sudo cmake --build "build" --config Release --target install

- name: Update apt repo
run: sudo apt-get update

- name: Install tools manually
run: sudo apt-get install lcov gcovr

- uses: actions/checkout@v4

- name: Configure CMake
run: cmake -DTEST=ON -DCODE_COVERAGE=ON -B ${{github.workspace}}/build; sudo apt-get install lcov gcovr

- name: Build
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build

- name: run
working-directory: ${{github.workspace}}/build/test
run: ./test_exe

- name: create Report
working-directory: ${{github.workspace}}/build/test
run: lcov --capture --directory .. --output-file coverage.info

- uses: codecov/[email protected]
with:
#token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
file: ${{github.workspace}}/build/test/coverage.info # optional
flags: unittests # optional
name: codecov-umbrella # optional
fail_ci_if_error: true # optional (default = false)
28 changes: 28 additions & 0 deletions .github/workflows/Copy_Action_On_WebSite_Branch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Copy Github Action on Other Branch

on:
workflow_dispatch:
push:
#paths-ignore:
#- '.github/**' # Ignore changes towards the .github directory
paths:
- '.github'
branches:
- master # Only trigger on the master branch

jobs:
build:
runs-on: [ubuntu-latest]
steps:
- name: Copy
uses: andstor/copycat-action@v3
with:
personal_token: ${{ secrets.PERSONAL_TOKEN }}
src_path: /.github
dst_path: /.github
src_branch: master
dst_branch: WebSite
username: ZigRazor
email: [email protected]
dst_owner: ZigRazor
dst_repo_name: CXXGraph
80 changes: 80 additions & 0 deletions .github/workflows/Doxygen.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# This is a basic workflow to help you get started with Actions

name: Doxygen

# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
paths:
- 'docs/Doxyfile'
branches: [ master ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.PERSONAL_TOKEN }}
- name: Generate build number
id: buildnumber
uses: einaregilsson/build-number@v3
with:
token: ${{secrets.PERSONAL_TOKEN}}
# Now you can pass ${{ steps.buildnumber.outputs.build_number }} to the next steps.
- name: Checkout New Branch
run: |
git fetch
git checkout -b documentation-update-${{ steps.buildnumber.outputs.build_number }}
git push origin documentation-update-${{ steps.buildnumber.outputs.build_number }}
- name: Doxygen Action
uses: mattnotmitt/[email protected]
with:
# Working directory
working-directory: 'docs/'
# Path to Doxyfile
doxyfile-path: './Doxyfile'
# Generate latex documentation
#enable-latex: # optional
# Extra alpine packages for the build environment
#additional-packages: # optional, default is
- name: commit changes
run: |
git config --global user.name "ZigRazor"
git config --global user.email "[email protected]"
git add docs
git commit -m "Updated Doxygen Documentation"
- name: Push changes
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.PERSONAL_TOKEN }}
branch: documentation-update-${{ steps.buildnumber.outputs.build_number }}

- name: Create Pull Request
uses: thomaseizinger/[email protected]
with:
# A GitHub API token
github_token: ${{ secrets.PERSONAL_TOKEN }}
# The head ref that should be pulled into base.
head: documentation-update-${{ steps.buildnumber.outputs.build_number }}
# The title of the pull request.
title: Documentation Update
# The base branch for the pull request. Defaults to master.
#base: # optional
# Whether this should be a draft PR.
draft: false # optional
# The body of the pull request.
body: Automatic Documentation Update # optional
# A comma-separated list of GitHub logins that should review this PR.
#reviewers: #optional
68 changes: 68 additions & 0 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Benchmark
on:
push:
branches: [ master ]
#pull_request:
# branches: [ master ]

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release

jobs:
benchmark:
name: Performance regression check
runs-on: ubuntu-latest
steps:
#- name: Install gtest manually
# run: sudo apt-get install libgtest-dev

#- name: Install benchmark manually
# run: |
# git clone https://github.com/google/benchmark.git
# git clone https://github.com/google/googletest.git benchmark/googletest
# cd benchmark
# cmake -E make_directory "build"
# cmake -E chdir "build" cmake -DCMAKE_BUILD_TYPE=Release ../
# cmake --build "build" --config Release
# sudo cmake --build "build" --config Release --target install
- uses: actions/checkout@v4

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DBENCHMARK=ON

- name: Build
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -j
- name: Download previous benchmark data
uses: actions/cache@v4
with:
path: ./cache
key: ${{ runner.os }}-benchmark

- name: Benchmarking
working-directory: ${{github.workspace}}/build
run: ./benchmark --benchmark_format=json --benchmark_out=benchmark_result.json
# Run `github-action-benchmark` action
- name: Store benchmark result
uses: rhysd/github-action-benchmark@v1
with:
# What benchmark tool the output.txt came from
tool: 'googlecpp'
# Where the output from the benchmark tool is stored
output-file-path: ${{github.workspace}}/build/benchmark_result.json
# Where the previous data file is stored
#external-data-json-path: ./cache/benchmark-data.json
# Workflow will fail when an alert happens
fail-on-alert: true
# Upload the updated cache file for the next job by actions/cache
# Personal access token to deploy GitHub Pages branch
github-token: ${{ secrets.PERSONAL_TOKEN }}
# Push and deploy GitHub pages branch automatically
auto-push: true
# Enable alert commit comment
comment-on-alert: true
# Mention @rhysd in the commit comment
alert-comment-cc-users: '@ZigRazor'
Loading

0 comments on commit 7977697

Please sign in to comment.