11 Commits

Author SHA1 Message Date
Gitea Actions
090eca5134 Update manifest version to 2.1.1 [▶️] 2026-01-23 02:14:25 +00:00
1b5086aadc Update README.md
All checks were successful
Build, Push, Publish / Build & Release (push) Successful in 1m5s
2026-01-23 02:13:31 +00:00
Gitea Actions
d60343bfd5 Sync README from template [▶️] 2026-01-10 04:03:46 +00:00
Gitea Actions
e4580e3239 Sync README from template [▶️] 2026-01-01 04:01:26 +00:00
Gitea Actions
321b0c20c8 Sync README from template [▶️] 2025-12-28 04:03:16 +00:00
Gitea Actions
6859056efc Update manifest version to 2.1.0 [▶️] 2025-12-22 04:50:43 +00:00
e4e71b4df8 Merge branch 'main' of https://git.icc.gg/ivancarlos/bkpscripts
All checks were successful
Build, Push, Publish / Build & Release (push) Successful in 23s
2025-12-22 01:41:29 -03:00
59eaed06a9 fix release build, add readme update for some repo 2025-12-22 01:41:19 -03:00
Gitea Actions
2b8334104f Sync README from template [▶️] 2025-12-22 04:02:36 +00:00
Gitea Actions
03a5c05e46 Update manifest version to 2.0.1 [▶️] 2025-12-22 02:42:11 +00:00
16ac1d5205 update actions
All checks were successful
Build, Push, Publish / Build & Release (push) Successful in 21s
2025-12-21 23:32:04 -03:00
4 changed files with 81 additions and 44 deletions

View File

@@ -5,9 +5,6 @@ on:
branches: branches:
- main - main
workflow_dispatch: workflow_dispatch:
schedule:
- cron: '28 5 * * *'
# workflow_run support in Gitea can be tricky, keeping it but might need adjustment
workflow_run: workflow_run:
workflows: ["Sync Repo"] workflows: ["Sync Repo"]
types: types:
@@ -19,7 +16,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: container:
image: catthehacker/ubuntu:act-latest image: catthehacker/ubuntu:act-latest
permissions: permissions:
contents: write contents: write
packages: write packages: write
@@ -139,7 +136,7 @@ jobs:
LATEST_RELEASE_TAG=$(curl -sL -H "Accept: application/json" \ LATEST_RELEASE_TAG=$(curl -sL -H "Accept: application/json" \
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"${{ gitea.api_url }}/repos/${{ gitea.repository }}/releases/latest" | jq -r .tag_name) "${{ gitea.api_url }}/repos/${{ gitea.repository }}/releases/latest" | jq -r .tag_name)
if [ -z "$LATEST_RELEASE_TAG" ] || [ "$LATEST_RELEASE_TAG" = "null" ]; then if [ -z "$LATEST_RELEASE_TAG" ] || [ "$LATEST_RELEASE_TAG" = "null" ]; then
LATEST_RELEASE_TAG="v1.0.0" LATEST_RELEASE_TAG="v1.0.0"
fi fi
@@ -245,7 +242,7 @@ jobs:
AUTHOR="Ivan Carlos" AUTHOR="Ivan Carlos"
VERSION_FILE="manifest.json" VERSION_FILE="manifest.json"
UPSTREAM_SHA="${{ steps.check_upstream.outputs.upstream_sha }}" UPSTREAM_SHA="${{ steps.check_upstream.outputs.upstream_sha }}"
if [ -f "$VERSION_FILE" ]; then if [ -f "$VERSION_FILE" ]; then
jq --arg v "$VERSION" \ jq --arg v "$VERSION" \
--arg a "$AUTHOR" \ --arg a "$AUTHOR" \
@@ -265,6 +262,11 @@ jobs:
git commit -m "Update manifest version to ${{ steps.version.outputs.VERSION }} [▶️]" || echo "Nothing to commit" git commit -m "Update manifest version to ${{ steps.version.outputs.VERSION }} [▶️]" || echo "Nothing to commit"
git push origin main git push origin main
- name: 🛠 Install zip
if: steps.check_commits.outputs.commit_count != '0'
run: |
apt-get update && apt-get install -y zip
- name: 📦 Create ZIP package (excluding certain files) - name: 📦 Create ZIP package (excluding certain files)
if: steps.check_commits.outputs.commit_count != '0' if: steps.check_commits.outputs.commit_count != '0'
run: | run: |
@@ -279,11 +281,11 @@ jobs:
run: | run: |
TAG_NAME="v${{ steps.version.outputs.VERSION }}" TAG_NAME="v${{ steps.version.outputs.VERSION }}"
RELEASE_NAME="${{ steps.version.outputs.REPO_NAME }} v${{ steps.version.outputs.VERSION }}" RELEASE_NAME="${{ steps.version.outputs.REPO_NAME }} v${{ steps.version.outputs.VERSION }}"
# Construct Markdown body safely using env var # Construct Markdown body safely using env var
# We use printf to avoid interpreting backslashes in the file list # We use printf to avoid interpreting backslashes in the file list
BODY=$(printf "### Changelog\nFiles changed in this release:\n%s" "$CHANGELOG_LIST") BODY=$(printf "### Changelog\nFiles changed in this release:\n%s" "$CHANGELOG_LIST")
# Create JSON payload using jq # Create JSON payload using jq
jq -n \ jq -n \
--arg tag_name "$TAG_NAME" \ --arg tag_name "$TAG_NAME" \
@@ -299,13 +301,13 @@ jobs:
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
-H "Content-Type: application/json" \ -H "Content-Type: application/json" \
-d @release_payload.json > api_response.json -d @release_payload.json > api_response.json
echo "DEBUG: API Response:" echo "DEBUG: API Response:"
cat api_response.json || true cat api_response.json || true
RELEASE_ID=$(jq -r .id api_response.json) RELEASE_ID=$(jq -r .id api_response.json)
echo "RELEASE_ID=$RELEASE_ID" >> "$GITHUB_OUTPUT" echo "RELEASE_ID=$RELEASE_ID" >> "$GITHUB_OUTPUT"
if [ "$RELEASE_ID" == "null" ] || [ -z "$RELEASE_ID" ]; then if [ "$RELEASE_ID" == "null" ] || [ -z "$RELEASE_ID" ]; then
echo "Failed to create release. Response content:" echo "Failed to create release. Response content:"
cat api_response.json cat api_response.json
@@ -318,19 +320,18 @@ jobs:
RELEASE_ID="${{ steps.create_release.outputs.RELEASE_ID }}" RELEASE_ID="${{ steps.create_release.outputs.RELEASE_ID }}"
ZIP_NAME="${{ steps.version.outputs.ZIP_NAME }}" ZIP_NAME="${{ steps.version.outputs.ZIP_NAME }}"
FILE_PATH="./$ZIP_NAME" FILE_PATH="./$ZIP_NAME"
curl -s -X POST "${{ gitea.api_url }}/repos/${{ gitea.repository }}/releases/$RELEASE_ID/assets" \ curl --fail -s -X POST "${{ gitea.api_url }}/repos/${{ gitea.repository }}/releases/$RELEASE_ID/assets?name=$ZIP_NAME" \
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
-H "Content-Type: application/zip" \ -H "Content-Type: application/zip" \
--data-binary @"$FILE_PATH" \ --data-binary @"$FILE_PATH"
-o /dev/null
# ----- Docker steps ----- # ----- Docker steps -----
- name: Clone Upstream Code (if needed) - name: Clone Upstream Code (if needed)
if: steps.check_commits.outputs.commit_count != '0' && (steps.check_upstream.outputs.upstream_needs_update == 'true' || steps.check_upstream.outputs.repo_url != '') if: steps.check_commits.outputs.commit_count != '0' && (steps.check_upstream.outputs.upstream_needs_update == 'true' || steps.check_upstream.outputs.repo_url != '')
run: | run: |
rm -rf upstream_src rm -rf upstream_src
git clone --depth 1 --branch ${{ steps.check_upstream.outputs.repo_branch }} ${{ steps.check_upstream.outputs.repo_url }} upstream_src git clone --depth 1 --branch ${{ steps.check_upstream.outputs.repo_branch }} ${{ steps.check_upstream.outputs.repo_url }} upstream_src
- name: 🔍 Check if Dockerfile exists - name: 🔍 Check if Dockerfile exists
if: steps.check_commits.outputs.commit_count != '0' || steps.check_upstream.outputs.upstream_needs_update == 'true' if: steps.check_commits.outputs.commit_count != '0' || steps.check_upstream.outputs.upstream_needs_update == 'true'

View File

@@ -0,0 +1,59 @@
name: Update README
permissions:
contents: write
on:
workflow_dispatch:
schedule:
- cron: "0 4 * * *" # Every day at 4 AM UTC
jobs:
update-readme:
runs-on: ubuntu-latest
container:
image: catthehacker/ubuntu:act-latest
env:
SOURCE_REPO: ivancarlos/.gitea
SOURCE_BRANCH: main
steps:
- name: Checkout current repository
uses: actions/checkout@v4
- name: Checkout source README template
uses: actions/checkout@v4
with:
repository: ${{ env.SOURCE_REPO }}
ref: ${{ env.SOURCE_BRANCH }}
token: ${{ secrets.CR_PAT }}
path: source_readme
- name: Update README.md (footer only)
run: |
set -e
# --- Extract footer block from source (everything from <!-- footer --> onward) ---
FOOTER=$(awk '/<!-- footer -->/{flag=1}flag' source_readme/README.md)
# --- Replace everything after <!-- footer --> with FOOTER ---
awk -v footer="$FOOTER" '
/<!-- footer -->/ {
print footer
found=1
exit
}
{ print }
' README.md > README.tmp && mv README.tmp README.md
- name: Remove source_readme from git index
run: rm -rf source_readme
- name: Commit and push changes
run: |
git config user.name "Gitea Actions"
git config user.email "actions@git.icc.gg"
git add README.md
git commit -m "Sync README from template [▶️]" || echo "Nothing to commit"
git push origin ${{ github.ref_name }}

View File

@@ -1,19 +1,6 @@
# Backup Scripts # Backup Scripts
Backup Scripts gives ideas do generate backup of webservers and databases for backup purposes with option to send it to BackBlaze buckets configured on Rclone, also check BackBlaze repositories for outdated buckets and send email messages when find outdated buckets to you through Amazon SES. You can change the script to fit it for other backup storage services and messaging. Backup Scripts gives ideas do generate backup of webservers and databases for backup purposes with option to send it to BackBlaze buckets configured on Rclone, also check BackBlaze repositories for outdated buckets and send email messages when find outdated buckets to you through Amazon SES. You can change the script to fit it for other backup storage services and messaging.
<!-- buttons -->
[![Stars](https://img.shields.io/github/stars/ivancarlosti/bkpscripts?label=⭐%20Stars&color=gold&style=flat)](https://github.com/ivancarlosti/bkpscripts/stargazers)
[![Watchers](https://img.shields.io/github/watchers/ivancarlosti/bkpscripts?label=Watchers&style=flat&color=red)](https://github.com/sponsors/ivancarlosti)
[![Forks](https://img.shields.io/github/forks/ivancarlosti/bkpscripts?label=Forks&style=flat&color=ff69b4)](https://github.com/sponsors/ivancarlosti)
[![GitHub commit activity](https://img.shields.io/github/commit-activity/m/ivancarlosti/bkpscripts?label=Activity)](https://github.com/ivancarlosti/bkpscripts/pulse)
[![GitHub Issues](https://img.shields.io/github/issues/ivancarlosti/bkpscripts?label=Issues&color=orange)](https://github.com/ivancarlosti/bkpscripts/issues)
[![License](https://img.shields.io/github/license/ivancarlosti/bkpscripts?label=License)](LICENSE)
[![GitHub last commit](https://img.shields.io/github/last-commit/ivancarlosti/bkpscripts?label=Last%20Commit)](https://github.com/ivancarlosti/bkpscripts/commits)
[![Security](https://img.shields.io/badge/Security-View%20Here-purple)](https://github.com/ivancarlosti/bkpscripts/security)
[![Code of Conduct](https://img.shields.io/badge/Code%20of%20Conduct-2.1-4baaaa)](https://github.com/ivancarlosti/bkpscripts?tab=coc-ov-file)
[![GitHub Sponsors](https://img.shields.io/github/sponsors/ivancarlosti?label=GitHub%20Sponsors&color=ffc0cb)][sponsor]
<!-- endbuttons -->
## Instructions ## Instructions
* Setup `rclone.sh` file to run backup of webserver and MariaDB/MySQL or Postgres database * Setup `rclone.sh` file to run backup of webserver and MariaDB/MySQL or Postgres database
@@ -50,20 +37,10 @@ Backup Scripts gives ideas do generate backup of webservers and databases for ba
* For personal support and queries, please submit a new issue to have it addressed. * For personal support and queries, please submit a new issue to have it addressed.
* For commercial related questions, please [**contact me**][ivancarlos] for consulting costs. * For commercial related questions, please [**contact me**][ivancarlos] for consulting costs.
## 🩷 Project support | 🩷 Project support |
| If you found this project helpful, consider |
| :---: | | :---: |
[**buying me a coffee**][buymeacoffee], [**donate by paypal**][paypal], [**sponsor this project**][sponsor] or just [**leave a star**](../..)⭐ If you found this project helpful, consider [**buying me a coffee**][buymeacoffee]
|Thanks for your support, it is much appreciated!| |Thanks for your support, it is much appreciated!|
[cc]: https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project [ivancarlos]: https://ivancarlos.me
[contributing]: https://docs.github.com/en/articles/setting-guidelines-for-repository-contributors
[security]: https://docs.github.com/en/code-security/getting-started/adding-a-security-policy-to-your-repository
[support]: https://docs.github.com/en/articles/adding-support-resources-to-your-project
[it]: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
[prt]: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository
[funding]: https://docs.github.com/en/articles/displaying-a-sponsor-button-in-your-repository
[ivancarlos]: https://ivancarlos.it
[buymeacoffee]: https://www.buymeacoffee.com/ivancarlos [buymeacoffee]: https://www.buymeacoffee.com/ivancarlos
[paypal]: https://icc.gg/donate
[sponsor]: https://github.com/sponsors/ivancarlosti

View File

@@ -1,4 +1,4 @@
{ {
"version": "2.0.0", "version": "2.1.1",
"author": "Ivan Carlos" "author": "Ivan Carlos"
} }