{"id":21578664,"url":"https://github.com/mbaraa/rex-action","last_synced_at":"2026-03-10T06:31:43.598Z","repository":{"id":161824389,"uuid":"636331371","full_name":"mbaraa/rex-action","owner":"mbaraa","description":"Rex's action","archived":false,"fork":false,"pushed_at":"2025-03-20T19:52:40.000Z","size":3176,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-11T05:19:14.482Z","etag":null,"topics":["deployment","github-actions"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mbaraa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-05-04T15:49:49.000Z","updated_at":"2025-03-20T19:51:24.000Z","dependencies_parsed_at":"2024-11-09T01:18:50.932Z","dependency_job_id":"b19aad82-f13d-4d9f-a7f4-78f10a53b106","html_url":"https://github.com/mbaraa/rex-action","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/mbaraa/rex-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbaraa%2Frex-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbaraa%2Frex-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbaraa%2Frex-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbaraa%2Frex-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mbaraa","download_url":"https://codeload.github.com/mbaraa/rex-action/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbaraa%2Frex-action/sbom","scorecard":{"id":630748,"data":{"date":"2025-08-11","repo":{"name":"github.com/mbaraa/rex-action","commit":"fd8a07fde4c46420c412030ed33190bf2d5c49a6"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":1.6,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":0,"reason":"Found 1/29 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":8,"reason":"binaries present in source code","details":["Warn: binary detected: node_modules/undici/lib/llhttp/llhttp.wasm:1","Warn: binary detected: node_modules/undici/lib/llhttp/llhttp_simd.wasm:1"],"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 2 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":1,"reason":"9 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-x4c5-c7rf-jjgv","Warn: Project is vulnerable to: GHSA-h5c3-5r3r-rr8q","Warn: Project is vulnerable to: GHSA-rmvr-2pp2-xj38","Warn: Project is vulnerable to: GHSA-xx4v-prfh-6cgc","Warn: Project is vulnerable to: GHSA-8hc4-vh64-cxmj","Warn: Project is vulnerable to: GHSA-jr5f-v2jv-69x6","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-c76h-2ccp-4975","Warn: Project is vulnerable to: GHSA-cxrh-j4jr-qwg3"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-21T07:51:05.939Z","repository_id":161824389,"created_at":"2025-08-21T07:51:05.939Z","updated_at":"2025-08-21T07:51:05.939Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30326891,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T05:25:20.737Z","status":"ssl_error","status_checked_at":"2026-03-10T05:25:17.430Z","response_time":106,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["deployment","github-actions"],"created_at":"2024-11-24T13:11:19.538Z","updated_at":"2026-03-10T06:31:43.573Z","avatar_url":"https://github.com/mbaraa.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rex\n\nRedeploy docker compose containers after git push\n\n### Installing the server:\n\nThis will install Rex's server which will allow deploying your app\n\n1.  You can use the latest binary release in the [releases](https://github.com/mbaraa/rex/releases)\n2.  Or if that doesn't work, compile it yourself using\n    - `go build -ldflags=\"-w -s\"`\n3.  Create a `.env` file by copying the example\n    - `cp .env.example .env` if you run windows on your server I have nothing to say to you, except WHY!!\n4.  Modify the fields as you like, make sure to not share your token, since you'll use it in the action to deploy the repo, and it being public is not good news :)\n5.  Install the systemd service, since I haven't figured out how to make this fully work in docker :(\n\n\u003c!----\u003e\n\n    # /etc/systemd/system/rex.service\n    [Unit]\n    Description=Rex\n\n    [Service]\n    Type=simple\n    User=yourusername # so that git will work, and the other docker stuff\n    WorkingDirectory=/path/to/rex/binary/and/env/file # they must be in the same directory, otherwise it won't work :)\n    ExecStart=/path/to/rex/binary\n    Restart=always\n\n    [Install]\n    WantedBy=multi-user.target\n\n6\\. Reload systemd's daemons and start the server\n\n```bash\nsudo systemctl daemon-reload\nsudo systemctl enable --now rex\n```\n\n### Adding the GitHub action\n\nThis where the fun begins.\n\n1.  Add a [secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets) to your GitHub Repo called `REX_KEY` with the same value that you've set on the server\n    - You can add the server url as a secret as well if you prefer to :)\n2.  Create the GitHub action under `.github/workflows/rex-build.yml`\n\n```yaml\njobs:\n  rex-deploy:\n    runs-on: ubuntu-latest\n    steps:\n      - name: rex-7567-e27\n        uses: mbaraa/rex-action@v1.6.4\n        with:\n          server-url: example.com\n          token: ${{ secrets.REX_KEY }}\n          repo-name: repoName\n          # commit-sha is optional :)\n          commit-sha: ${{ github.sha }}\n          # latest-tag is optional :)\n          latest-tag: ${{ github.ref }}\n          # compose-file-name is optional :)\n          compose-file-name: \"docker-compose-prod.yml\"\n```\n\n3.  Do a push and see the magic happen\n\n### Note:\n\nThis action was generated using [this](https://docs.github.com/en/actions/creating-actions/creating-a-javascript-action) doc.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbaraa%2Frex-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmbaraa%2Frex-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbaraa%2Frex-action/lists"}