Skip to content

Commit

Permalink
Main (#5)
Browse files Browse the repository at this point in the history
* Disable TravisCI

* Add GitHub templates.

* Update automation and set Go module
  • Loading branch information
nicolaasuni authored Feb 22, 2024
1 parent d78936b commit 7d1de3e
Show file tree
Hide file tree
Showing 41 changed files with 1,235 additions and 538 deletions.
4 changes: 4 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
.git
.cache
.benchmarks
env-*
4 changes: 4 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*.csv text eol=lf
*.txt text eol=lf
*.json text eol=lf
*.tab text eol=lf
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
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. ...

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

**Logs**
If applicable, copy the relevant logs to help explain your problem.

**Environment:**
- OS:
- Version:

**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.
52 changes: 52 additions & 0 deletions .github/workflows/autopr.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Auto PR

on:
push:
branches:
- 'autopr/**'

permissions: read-all

jobs:
create-pull-request:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- name: Create PR
uses: actions/github-script@v6
with:
script: |
const { repo, owner } = context.repo;
const pulls = await github.rest.pulls.list({
owner: owner,
repo: repo,
head: context.ref,
base: 'main',
state: 'open',
});
if (pulls.data.length < 1) {
await github.rest.pulls.create({
title: '[AUTOPR] Automatic updates',
owner: owner,
repo: repo,
head: context.ref,
base: 'main',
body: [
'This PR is auto-generated by',
'[actions/github-script](https://github.com/actions/github-script)',
].join('\n'),
});
} else {
const existingPR = pulls.data[0];
await github.rest.pulls.update({
owner: owner,
repo: repo,
pull_number: existingPR.number,
body: [
existingPR.body,
`Updated by Job ${context.job}`,
].join('\n'),
});
}
76 changes: 76 additions & 0 deletions .github/workflows/check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
name: check

on:
push:
branches:
- 'main'
pull_request:
branches:
- 'main'

env:
PYTHON_VERSION: 3.x

permissions:
contents: read

jobs:
c:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: install dependencies
run: sudo apt install -y lcov astyle
- name: set RELEASE number
run: echo ${GITHUB_RUN_NUMBER} > RELEASE
- name: test
run: cd c && make version test build

cgo:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: setup go build environment
uses: actions/setup-go@v3
with:
go-version-file: 'go.mod'
check-latest: true
- name: set RELEASE number
run: echo ${GITHUB_RUN_NUMBER} > RELEASE
- name: test
run: cd cgo && make mod deps linter test GOPATH=$(go env GOPATH)

go:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: setup go build environment
uses: actions/setup-go@v3
with:
go-version-file: 'go.mod'
check-latest: true
- name: set RELEASE number
run: echo ${GITHUB_RUN_NUMBER} > RELEASE
- name: test
run: cd go && make mod deps linter test GOPATH=$(go env GOPATH)

python:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: setup python build environment
uses: actions/setup-python@v2
with:
python-version: ${{ env.PYTHON_VERSION }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade virtualenv
- name: set RELEASE number
run: echo ${GITHUB_RUN_NUMBER} > RELEASE
- name: test
run: cd python && make vbuild
74 changes: 74 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"

on:
push:
branches: [ "main" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "main" ]
schedule:
- cron: '21 22 * * 3'

permissions: read-all

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'go' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support

steps:
- name: Checkout repository
uses: actions/checkout@v3

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.

# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality


# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2

# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun

# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.

# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{matrix.language}}"
29 changes: 29 additions & 0 deletions .github/workflows/confluence.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: confluence

on:
push:
branches:
- 'main'

permissions:
contents: read

jobs:
publish:
if: github.repository == 'Vonage/numkey'
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
with: { ref: main }
- name: setup go build environment
uses: actions/setup-go@v3
with:
go-version-file: 'go.mod'
check-latest: true
- name: install publishing tool
run: go install github.com/kovetskiy/mark@latest
- name: publish docs
run: |
touch ~/.config/mark || true
mark -u ${{ secrets.CONFLUENCE_USER }} -p ${{ secrets.CONFLUENCE_TOKEN }} -b ${{ secrets.CONFLUENCE_URL }} -f README.md
20 changes: 20 additions & 0 deletions .github/workflows/dependency-review.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Dependency Review Action
#
# This Action will scan dependency manifest files that change as part of a Pull Request, surfacing known-vulnerable versions of the packages declared or updated in the PR. Once installed, if the workflow run is marked as required, PRs introducing known-vulnerable packages will be blocked from merging.
#
# Source repository: https://github.com/actions/dependency-review-action
# Public documentation: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-enforcement
name: 'Dependency Review'
on: [pull_request]

permissions:
contents: read

jobs:
dependency-review:
runs-on: ubuntu-latest
steps:
- name: 'Checkout Repository'
uses: actions/checkout@v3
- name: 'Dependency Review'
uses: actions/dependency-review-action@v2
30 changes: 27 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,29 @@
target
/Dockerfile
**/*.log
**/*.test
**/env-*
*.bak
*.cover
*.egg
*.egg-info
*.manifest
*.so
*.test
**/.pytest_cache
.bechmarks
.cache
.coverage*
.env
.idea
.pytest_cache
.tmp
.venv
.vscode
/Dockerfile
__pycache__
build
coverage.xml
dist
htmlcov
nosetests.xml
pip-delete-this-directory.txt
pip-log.txt
target
12 changes: 11 additions & 1 deletion .travis.yml → .travis.yml.off
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
os: linux
dist: trusty

dist: bionic

sudo: required

branches:
only:
- main

addons:
apt:
packages:
Expand All @@ -14,6 +21,9 @@ addons:
install:
- gem install coveralls-lcov

script:
- echo "$TRAVIS_BUILD_NUMBER" > RELEASE

matrix:
include:
- language: c
Expand Down
1 change: 1 addition & 0 deletions CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @nicolaasuni
Loading

0 comments on commit 7d1de3e

Please sign in to comment.