action to sync files with a remote rsync daemon
  • TypeScript 70.5%
  • Nix 29.5%
Find a file
renovate 3e21509ebf
All checks were successful
check / check (push) Successful in 31s
check / action (push) Successful in 40s
chore(deps): update dependency rolldown to ^1.2.0 (#12)
2026-07-16 05:12:38 -04:00
.forgejo chore(deps): update spotdemo4/nix-init action to v1.58.0 (#11) 2026-07-15 05:22:19 -04:00
.github/workflows chore(deps): update spotdemo4/nix-init action to v1.58.0 (#11) 2026-07-15 05:22:19 -04:00
.vscode Initial commit 2026-07-01 06:38:19 -04:00
.zed Initial commit 2026-07-01 06:38:19 -04:00
build feat(action): remove local path after successful post-job push 2026-07-08 17:54:47 -04:00
src feat(action): remove local path after successful post-job push 2026-07-08 17:54:47 -04:00
tests fix(action): parse rsync TLS port with fallback and range checks 2026-07-01 11:02:14 -04:00
.envrc.project Initial commit 2026-07-01 06:38:19 -04:00
.gitignore feat(action): implement rsync pull/push action with TLS and tests 2026-07-01 07:43:19 -04:00
.npmignore Initial commit 2026-07-01 06:38:19 -04:00
.oxfmtrc.json Initial commit 2026-07-01 06:38:19 -04:00
.oxlintrc.json Initial commit 2026-07-01 06:38:19 -04:00
action.yaml chore(action): add branding metadata to action definition 2026-07-01 12:23:34 -04:00
AGENTS.md Initial commit 2026-07-01 06:38:19 -04:00
CLAUDE.md Initial commit 2026-07-01 06:38:19 -04:00
flake.lock chore(deps): lock file maintenance (#10) 2026-07-12 05:39:03 -04:00
flake.nix bump: v0.0.2 -> v0.1.0 2026-07-08 17:55:53 -04:00
LICENSE Initial commit 2026-07-01 06:38:19 -04:00
package-lock.json chore(deps): update dependency rolldown to ^1.2.0 (#12) 2026-07-16 05:12:38 -04:00
package.json chore(deps): update dependency rolldown to ^1.2.0 (#12) 2026-07-16 05:12:38 -04:00
README.md feat(action): remove local path after successful post-job push 2026-07-08 17:54:47 -04:00
rolldown.config.ts refactor(action)!: remove tls-type option 2026-07-01 07:56:59 -04:00
treefmt.toml build: exclude generated files from treefmt 2026-07-01 07:44:50 -04:00
tsconfig.json Initial commit 2026-07-01 06:38:19 -04:00

rsync-action

check vulnerable node

Pulls a file or directory from an rsync daemon, then pushes it back when the workflow finishes

- uses: spotdemo4/rsync-action@main
  with:
    server: rsync.example.com:873
    module: backups
    remote-path: project/
    local-path: project/
    secret: ${{ secrets.RSYNC_SECRET }}

secret must be username:password. The action passes the password via RSYNC_PASSWORD, so it targets an rsync daemon (rsyncd) and does not use SSH.

TLS is enabled by default, set tls: false for a plain rsync daemon.

The action removes local-path after a successful post-job push.

remote-path and local-path preserve normal rsync trailing slash semantics. For directory contents, include trailing slashes on both paths. A local-path of ~ or leading ~/ is expanded to HOME before rsync runs.