diff --git a/.github/workflows/anchore-syft.yml b/.forgejo/workflows/anchore-syft.yml similarity index 100% rename from .github/workflows/anchore-syft.yml rename to .forgejo/workflows/anchore-syft.yml diff --git a/.github/workflows/codeql.yml b/.forgejo/workflows/codeql.yml similarity index 100% rename from .github/workflows/codeql.yml rename to .forgejo/workflows/codeql.yml diff --git a/.forgejo/workflows/debian.yml b/.forgejo/workflows/debian.yml new file mode 100644 index 0000000..0a0ed7e --- /dev/null +++ b/.forgejo/workflows/debian.yml @@ -0,0 +1,78 @@ +name: Create the timetracker DEB + +permissions: + contents: write + +on: + push: + tags: + - 'v*' + +jobs: + Create_Packages: + name: Create Package + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Go + uses: https://code.forgejo.org/actions/setup-go@v5 + with: + go-version: '1.18' + + - name: Tidy dependencies + run: go mod tidy + + - name: Build + run: go build -o timetracker cmd/main.go + + - name: Copy necessary files + run: | + mkdir -p PKG_SOURCE/usr/local/bin + mkdir -p PKG_SOURCE/var/lib/timetracker + mkdir -p PKG_SOURCE/lib/systemd/system + cp -Rf ./DEBIAN PKG_SOURCE/ + cp -Rf ./timetracker PKG_SOURCE/var/lib/timetracker/ + cp -Rf ./scripts/* PKG_SOURCE/var/lib/timetracker/ + cp -Rf ./systemd/* PKG_SOURCE/lib/systemd/system/ + + - name: Create Deb package + run: | + dpkg-deb --build PKG_SOURCE timetracker_${{github.ref_name}}.deb + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.test }} + with: + tag_name: ${{ github.ref }} + release_name: Release ${{ github.ref }} + draft: false + prerelease: false + - name: Upload Release Asset + id: upload-release-asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.test }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps + asset_path: timetracker_${{github.ref_name}}.deb + asset_name: timetracker_${{github.ref_name}}.deb + asset_content_type: application/zip + - name: Upload Artifact (für CI-Artefakt) + uses: actions/upload-artifact@v3 + with: + name: timetracker_${{github.ref_name}}.deb + path: timetracker_${{github.ref_name}}.deb + retention-days: 5 + token: ${{ secrets.test }} + - name: Upload Package + run: | + FILE="timetracker_${{github.ref_name}}.deb" + ORG="Ronny.Friedland" + REPO="timetracker" + VERSION=${{github.ref_name}} + curl -v --header "Authorization: Bearer ${{ secrets.TEST }}" \ + --upload-file $FILE \ + "https://edp.buildth.ing/api/packages/${ORG}/generic/${REPO}/${VERSION}/${FILE}" diff --git a/.github/workflows/go.yml b/.forgejo/workflows/go.yml similarity index 100% rename from .github/workflows/go.yml rename to .forgejo/workflows/go.yml diff --git a/.forgejo/workflows/openbao.yml b/.forgejo/workflows/openbao.yml new file mode 100644 index 0000000..a74d4e4 --- /dev/null +++ b/.forgejo/workflows/openbao.yml @@ -0,0 +1,23 @@ +name: openbao + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + + build: + runs-on: ubuntu-latest + steps: + - name: Read Openbao secrets + id: read-openbao-secrets + uses: hashicorp/vault-action@v2 + with: + url: https://vault-test.mms-at-work.de:8200 + token: ${{ secrets.VAULT_TEST_TOKEN }} + secrets: | + testproject/test/testproject foo | FOO + - name: Echo secret value from Openbao + run: echo "$FOO" \ No newline at end of file diff --git a/.github/workflows/debian.yml b/.github/workflows/debian.yml deleted file mode 100644 index 5423edb..0000000 --- a/.github/workflows/debian.yml +++ /dev/null @@ -1,42 +0,0 @@ -name: Create the timetracker DEB - -permissions: - contents: write - -on: - push: - tags: - - 'v*' - -jobs: - Create_Packages: - name: Create Package - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Tidy dependencies - run: go mod tidy - - - name: Build - run: go build -o timetracker cmd/main.go - - - name: Copy necessary files - run: | - mkdir -p PKG_SOURCE/usr/local/bin - mkdir -p PKG_SOURCE/var/lib/timetracker - mkdir -p PKG_SOURCE/lib/systemd/system - cp -Rf ./DEBIAN PKG_SOURCE/ - cp -Rf ./timetracker PKG_SOURCE/var/lib/timetracker/ - cp -Rf ./scripts/* PKG_SOURCE/var/lib/timetracker/ - cp -Rf ./systemd/* PKG_SOURCE/lib/systemd/system/ - - - name: Create Deb package - run: | - dpkg-deb --build PKG_SOURCE timetracker_${{github.ref_name}}.deb - - - name: Release the Deb package - uses: softprops/action-gh-release@v1 - with: - files: timetracker_${{github.ref_name}}.deb \ No newline at end of file diff --git a/DEBIAN/control b/DEBIAN/control index 37be5dd..dfbc182 100644 --- a/DEBIAN/control +++ b/DEBIAN/control @@ -1,5 +1,5 @@ Package: timetracker -Version: 1.0.2 +Version: 1.2.0 Section: misc Priority: optional Architecture: all diff --git a/scripts/timetracker-archive.sh b/scripts/timetracker-archive.sh index f343215..0fd9b50 100644 --- a/scripts/timetracker-archive.sh +++ b/scripts/timetracker-archive.sh @@ -1,3 +1,3 @@ #!/usr/bin/env sh -timetracker -archivedata=true \ No newline at end of file +/var/lib/timetracker/timetracker -archivedata=true \ No newline at end of file diff --git a/scripts/timetracker.sh b/scripts/timetracker.sh index ab51640..b8e26f9 100644 --- a/scripts/timetracker.sh +++ b/scripts/timetracker.sh @@ -1,3 +1,3 @@ #!/usr/bin/env sh -timetracker \ No newline at end of file +/var/lib/timetracker/timetracker \ No newline at end of file