From 2551461a14acf449cc1ae0b70d9d30ebad170991 Mon Sep 17 00:00:00 2001 From: Matt Strapp Date: Tue, 14 May 2024 16:37:12 -0500 Subject: Add Go Signed-off-by: Matt Strapp --- .github/workflows/doxygen.yml | 41 +++++++++++++++++++++++++++++++++++++++++ .github/workflows/go.yml | 28 ++++++++++++++++++++++++++++ .gitignore | 29 ++++++++++++++++++++++++++++- .vscode/settings.json | 4 +--- go.mod | 3 +++ locusts.go | 9 +++++++++ locusts_test.go | 13 +++++++++++++ 7 files changed, 123 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/doxygen.yml create mode 100644 .github/workflows/go.yml create mode 100644 go.mod create mode 100644 locusts.go create mode 100644 locusts_test.go diff --git a/.github/workflows/doxygen.yml b/.github/workflows/doxygen.yml new file mode 100644 index 0000000..e2dc8c1 --- /dev/null +++ b/.github/workflows/doxygen.yml @@ -0,0 +1,41 @@ +name: Deploy Doxygen to GitHub Pages + +on: + push: + branches: [$default-branch] + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Setup Doxygen + run: sudo apt-get install -y doxygen + - name: Generate Doxygen documentation + run: doxygen Doxyfile + - name: Upload Artifacts + uses: actions/upload-artifact@v3 + with: + path: html/ + + deploy: + needs: build + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 \ No newline at end of file diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml new file mode 100644 index 0000000..b415085 --- /dev/null +++ b/.github/workflows/go.yml @@ -0,0 +1,28 @@ +name: Go + +on: + push: + paths: + - '**.go' + - '**go.mod' + pull_request: + paths: + - '**.go' + - '**go.mod' + +jobs: + build: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + steps: + - uses: actions/checkout@v2 + - name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: 'stable' + - name: Build + run: go build -v . + - name: Test + run: go test -v . \ No newline at end of file diff --git a/.gitignore b/.gitignore index d7224f1..a64202a 100644 --- a/.gitignore +++ b/.gitignore @@ -43,7 +43,7 @@ *.pdb # Kernel Module Compile Results -*.mod* +#*.mod* *.cmd .tmp_versions/ modules.order @@ -110,3 +110,30 @@ ocusts.pc *~ # CMake build/**/* +# /C + +# Go +# Binaries for programs and plugins +*.exe +*.exe~ +*.dll +*.so +*.dylib + +# Test binary, built with `go test -c` +*.test + +# Output of the go coverage tool, specifically when used with LiteIDE +*.out + +# Dependency directories (remove the comment below to include it) +# vendor/ + +# Go workspace file +go.work +go.work.sum +# /Go + +# Added by cargo + +/target diff --git a/.vscode/settings.json b/.vscode/settings.json index fec876f..7082e0e 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,3 @@ { - "mesonbuild.configureOnOpen": true, - "C_Cpp.default.compileCommands": "/home/user/src/locusts-r-us/libocusts/builddir/compile_commands.json", - "C_Cpp.default.configurationProvider": "mesonbuild.mesonbuild" + "mesonbuild.configureOnOpen": true } \ No newline at end of file diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..6fe91c1 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module github.com/locusts-r-us/locusts + +go 1.0.0 diff --git a/locusts.go b/locusts.go new file mode 100644 index 0000000..3c7204a --- /dev/null +++ b/locusts.go @@ -0,0 +1,9 @@ +// Package locusts is a completely normal Go library. +package locusts + +// IntroduceLocusts is a function that introduces locusts into your codebase. +// +// Note that locusts are not included with this package, you must provide your own. +func IntroduceLocusts() { + return +} diff --git a/locusts_test.go b/locusts_test.go new file mode 100644 index 0000000..f38731a --- /dev/null +++ b/locusts_test.go @@ -0,0 +1,13 @@ +package locusts + +import "testing" + +func TestIntroduceLocusts(t *testing.T) { + defer func() { + if r := recover(); r != nil { + t.Errorf("Panic! The locusts are loose!") + } + }() + + IntroduceLocusts() +} -- cgit v1.2.3