{"id":25399149,"url":"https://github.com/deephaven/salmon-sync","last_synced_at":"2025-04-11T13:54:19.034Z","repository":{"id":277291141,"uuid":"870212127","full_name":"deephaven/salmon-sync","owner":"deephaven","description":"Source code for an action that syncs docs to the Salmon of Knowledge bucket","archived":false,"fork":false,"pushed_at":"2025-03-21T16:56:03.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-03-21T17:44:04.876Z","etag":null,"topics":["action","deephaven"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deephaven.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-09T16:28:53.000Z","updated_at":"2025-03-21T16:56:06.000Z","dependencies_parsed_at":"2025-02-13T06:35:50.602Z","dependency_job_id":"b6acb854-b7d1-490e-bf0d-054a2cf9e07c","html_url":"https://github.com/deephaven/salmon-sync","commit_stats":null,"previous_names":["deephaven/salmon-sync"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fsalmon-sync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fsalmon-sync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fsalmon-sync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fsalmon-sync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deephaven","download_url":"https://codeload.github.com/deephaven/salmon-sync/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248412102,"owners_count":21099049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["action","deephaven"],"created_at":"2025-02-15T23:29:18.908Z","updated_at":"2025-04-11T13:54:19.021Z","avatar_url":"https://github.com/deephaven.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# salmon-sync\n\nThis is a Github Action that syncs a folder to a S3 bucket using `rclone`.\nThis action is only meant to work for Deephaven's documentation.\n\n## Parameters\n\n\u003e [!IMPORTANT]\n\u003e This action uses OIDC to authenticate with AWS.\n\u003e Your job must include the `id-token: write` permission and specify any other permissions it needs.\n\u003e See the [GitHub docs](https://docs.github.com/en/actions/security-for-github-actions/security-guides/automatic-token-authentication#permissions-for-the-github_token) for more info.\n\n```yml\ninputs:\n  source:\n    required: true\n    type: string\n    description: \"The source directory to sync.\"\n  destination:\n    required: true\n    type: string\n    description: \"The destination directory to sync. Relative to the bucket. It is recommended to use the GitHub repo path (such as deephaven/salmon-sync) as the minimum base to prevent collisions.\"\n  aws-role:\n    required: true\n    type: string\n    description: \"The AWS role to assume.\"\n  production:\n    required: false\n    default: \"false\"\n    type: boolean\n    description: \"If true, the files will be deployed to the production site. Otherwise they will be deployed to the preview site.\"\n  temporary:\n    required: false\n    default: \"true\"\n    type: boolean\n    description: \"If true, the files will be marked as temporary and deleted after 14 days. Otherwise they will persist in S3 indefinitely.\"\n```\n\n## Example\n\nThe action can be used as a step in a workflow\nHere is an example that syncs from the local path `temp/blog` to the blog section of the bucket.\n\n```yml\njobs:\n  upload-to-salmon:\n    runs-on: ubuntu-24.04\n    permissions:\n      id-token: write # Needed to authenticate with AWS\n      contents: read # If you want to checkout the repo\n    steps:\n      - name: Checkout the repo\n        uses: actions/checkout@v4\n\n      - name: Build docs\n        run: exit 1; # Replace with actually building docs\n\n      - name: Sync docs\n        uses: deephaven/salmon-sync@v1\n        with:\n          source: temp/blog\n          destination: deephaven/deephaven.io/blog\n          production: true # false for pr previews\n          temporary: false # true will delete non-production files after 14 days\n          aws-role: ${{ vars.DOCS_AWS_ROLE }}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeephaven%2Fsalmon-sync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeephaven%2Fsalmon-sync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeephaven%2Fsalmon-sync/lists"}