{"id":16932566,"url":"https://github.com/shogo82148/actions-setup-redis","last_synced_at":"2026-03-15T20:54:06.409Z","repository":{"id":37779852,"uuid":"212946308","full_name":"shogo82148/actions-setup-redis","owner":"shogo82148","description":"Setup Redis database Action","archived":false,"fork":false,"pushed_at":"2025-04-01T00:41:43.000Z","size":8153,"stargazers_count":41,"open_issues_count":5,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-02T18:09:34.628Z","etag":null,"topics":["database","github-actions","redis"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shogo82148.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["shogo82148"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2019-10-05T05:00:37.000Z","updated_at":"2025-03-29T16:32:57.000Z","dependencies_parsed_at":"2023-01-04T12:15:07.332Z","dependency_job_id":"ddcb8466-c3b3-464b-995a-43192c0d6ef2","html_url":"https://github.com/shogo82148/actions-setup-redis","commit_stats":{"total_commits":1076,"total_committers":4,"mean_commits":269.0,"dds":0.3931226765799256,"last_synced_commit":"dd0a3e0e1d3e4858439a25ef587edfce6a95eba2"},"previous_names":[],"tags_count":78,"template":false,"template_full_name":"actions/typescript-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shogo82148%2Factions-setup-redis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shogo82148%2Factions-setup-redis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shogo82148%2Factions-setup-redis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shogo82148%2Factions-setup-redis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shogo82148","download_url":"https://codeload.github.com/shogo82148/actions-setup-redis/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247500468,"owners_count":20948880,"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":["database","github-actions","redis"],"created_at":"2024-10-13T20:46:56.809Z","updated_at":"2026-03-15T20:54:06.350Z","avatar_url":"https://github.com/shogo82148.png","language":"TypeScript","funding_links":["https://github.com/sponsors/shogo82148"],"categories":[],"sub_categories":[],"readme":"# actions-setup-redis\n\n\u003cp align=\"left\"\u003e\n  \u003ca href=\"https://github.com/shogo82148/actions-setup-redis\"\u003e\u003cimg alt=\"GitHub Actions status\" src=\"https://github.com/shogo82148/actions-setup-redis/workflows/Test/badge.svg\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nThis action sets by [redis](https://redis.io/) database for use in actions by:\n\n- optionally downloading and caching a version of redis\n- start redis-server\n\n## Motivation\n\n- GitHub Actions supports Docker services, and there is the official [redis image](https://hub.docker.com/_/redis). but it works on only Linux.\n- Some test utils for redis (such as [Test::RedisServer](https://metacpan.org/pod/Test::RedisServer)) requires redis-server installed on the local host.\n\n## Usage\n\nSee [action.yml](action.yml)\n\nBasic:\n\n```yaml\nsteps:\n  - uses: actions/checkout@v4\n  - uses: shogo82148/actions-setup-redis@v1\n    with:\n      redis-version: \"7.x\"\n  - run: redis-cli ping\n```\n\nMatrix Testing:\n\n```yaml\njobs:\n  build:\n    runs-on: ${{ matrix.os }}\n    strategy:\n      matrix:\n        os:\n          - \"ubuntu-latest\"\n          - \"macOS-latest\"\n        # - 'windows-latest' # windows is currently not supported.\n        redis:\n          - \"7.2\"\n          - \"7.0\"\n          - \"6.2\"\n          - \"6.0\"\n          - \"5.0\"\n          - \"4.0\"\n    name: Redis ${{ matrix.redis }} on ${{ matrix.os }}\n    steps:\n      - uses: actions/checkout@v4\n      - name: Setup redis\n        uses: shogo82148/actions-setup-redis@v1\n        with:\n          redis-version: ${{ matrix.redis }}\n          auto-start: \"false\"\n\n      - name: tests with Test::RedisServer\n        run: |\n          cpanm Test::RedisServer\n          prove -lv t\n```\n\n## Configuration\n\n### distribution\n\nThe distribution. The valid values are `redis` or `valkey`. The default value is `redis`.\nYou can use `redis-` and `valkey-` prefixes in `redis-version` instead of the `distribution` input.\nFor example, the following two workflows install Valkey 7.2.\n\n```yaml\n- uses: shogo82148/actions-setup-redis@v1\n  with:\n    distribution: \"valkey\"\n    redis-version: \"7.2\"\n```\n\n```yaml\n- uses: shogo82148/actions-setup-redis@v1\n  with:\n    redis-version: \"valkey-7.2\"\n```\n\n### redis-version\n\nThe version of Redis.\nThe `redis-version` input supports the following syntax:\n\n- `latest`: the latest version of stable Redis\n- `7`, `6`, `5`, `4`: major versions\n- `7.2`, `7.0`: minor versions\n- `7.2.0`, `7.2.1`: patch versions\n\nThe default value is `latest`.\nThe actions supports only stable versions.\n\n### redis-port\n\nThe port number that `redis-server` listens.\nThe default value is `6379`.\n\n### redis-tls-port\n\nThe port number that `redis-server` listens TLS connections.\nThe default value is `0` and TLS is disabled.\n\n### auto-start\n\nIf the `auto-start` is `true`, the action starts `redis-server` as a daemon.\nIf it is `false`, the action just install Redis commands, doesn't start `redis-server`.\nIt is a boolean value, valid values are `true` or `false`.\nThe default value is `true`.\n\n### redis-conf\n\nExtra configurations for `redis.conf`.\nSee [Redis configuration](https://redis.io/topics/config).\n\n## Outputs\n\n### redis-port\n\nThe port number that `redis-server` listens.\n\n```yaml\njobs:\n  build:\n    runs-on: \"ubuntu-latest\"\n    steps:\n      - uses: actions/checkout@v4\n      - id: setup\n        uses: shogo82148/actions-setup-redis@v1\n\n      # connect to the redis-server via TCP\n      - run: |\n          redis-cli -h 127.0.0.1 -p ${{ steps.setup.outputs.redis-port }} ping\n```\n\n### redis-unix-socket\n\nThe unix domain socket path that `redis-server` listens.\n\n```yaml\njobs:\n  build:\n    runs-on: \"ubuntu-latest\"\n    steps:\n      - uses: actions/checkout@v4\n      - id: setup\n        uses: shogo82148/actions-setup-redis@v1\n\n      # connect to the redis-server via unix domain socket\n      - run: |\n          redis-cli -s ${{ steps.setup.outputs.redis-unix-socket }} ping\n```\n\n### redis-tls-port\n\nThe port number that `redis-server` listens TLS connections.\n\n### redis-tls-port\n\nThe directory path for TLS sample certificates/keys.\n\n```yaml\njobs:\n  build:\n    runs-on: \"ubuntu-latest\"\n    steps:\n      - uses: actions/checkout@v4\n      - id: setup\n        uses: shogo82148/actions-setup-redis@v1\n        with:\n          # TLS Support starts from v6.0.\n          redis-version: \"6.0\"\n\n          # TLS is disabled by default. You need extra configurations.\n          redis-port: \"0\"\n          redis-tls-port: \"6379\"\n\n      # connect to the redis-server via TLS\n      - run: |\n          redis-cli -h 127.0.0.1 -p \"${{ steps.setup.outputs.redis-tls-port }}\" \\\n            --tls \\\n            --cert \"${{ steps.setup.outputs.redis-tls-dir }}/redis.crt\" \\\n            --key \"${{ steps.setup.outputs.redis-tls-dir }}/redis.key\" \\\n            --cacert \"${{ steps.setup.outputs.redis-tls-dir }}/ca.crt\" \\\n            ping\n```\n\nSee [TLS Support](https://redis.io/topics/encryption) for more details.\n\n# License\n\nThe scripts and documentation in this project are released under the [MIT License](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshogo82148%2Factions-setup-redis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshogo82148%2Factions-setup-redis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshogo82148%2Factions-setup-redis/lists"}