From 0b90d91afc7df465a2b2ce23bcaae79d33a573e5 Mon Sep 17 00:00:00 2001 From: Julien Loizelet Date: Fri, 25 Oct 2024 17:23:19 +0900 Subject: [PATCH 1/9] test(*): Remove useless restart --- tests/test.bats | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/test.bats b/tests/test.bats index 2b01810..bb2a0f6 100644 --- a/tests/test.bats +++ b/tests/test.bats @@ -52,6 +52,5 @@ health_checks() { cd ${TESTDIR} || ( printf "unable to cd to ${TESTDIR}\n" && exit 1 ) echo "# ddev add-on get ddev/ddev-redis-commander with project ${PROJNAME} in ${TESTDIR} ($(pwd))" >&3 ddev add-on get ddev/ddev-redis-commander - ddev restart >/dev/null health_checks } From 95a3a2ea6545d9c2acddadecc258f827f5666afa Mon Sep 17 00:00:00 2001 From: Stanislav Zhuk Date: Fri, 11 Apr 2025 04:51:25 +0300 Subject: [PATCH 2/9] feat: add issue and PR templates (#20) --- .github/ISSUE_TEMPLATE/bug_report.yml | 45 ++++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.yml | 35 +++++++++++++++++ .github/PULL_REQUEST_TEMPLATE.md | 22 +++++++++++ 3 files changed, 102 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/PULL_REQUEST_TEMPLATE.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..d35875f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,45 @@ +name: 🐞 Bug report or Support Request +description: Create a report to help us improve. +labels: [bug] +body: + - type: checkboxes + attributes: + label: Preliminary checklist + description: Please complete the following checks before submitting an issue. + options: + - label: I am using the latest stable version of DDEV + required: true + - label: I am using the latest stable version of this add-on + required: true + - type: textarea + attributes: + label: Expected Behavior + description: What did you expect to happen? + validations: + required: true + - type: textarea + attributes: + label: Actual Behavior + description: What actually happened instead? + validations: + required: true + - type: textarea + attributes: + label: Steps To Reproduce + description: Specific steps to reproduce the behavior. + placeholder: | + 1. In this environment... + 2. With this config... + 3. Run `...` + 4. See error... + validations: + required: false + - type: textarea + attributes: + label: Anything else? + description: | + Links? References? Screenshots? Anything that will give us more context about your issue! + + 💡 Attach images or log files by clicking this area to highlight it and dragging files in. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..db21167 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,35 @@ +name: 🚀 Feature request +description: Suggest an idea for this project. +labels: [enhancement] +body: + - type: checkboxes + attributes: + label: Is there an existing issue for this? + description: Please search existing issues to see if one already exists for your request. + options: + - label: I have searched the existing issues + required: true + - type: textarea + attributes: + label: Is your feature request related to a problem? + description: Clearly and concisely describe the problem. (Ex. I'm always frustrated when...) + validations: + required: true + - type: textarea + attributes: + label: Describe your solution + description: Clearly and concisely describe what you want to happen. + validations: + required: true + - type: textarea + attributes: + label: Describe alternatives + description: Clearly and concisely describe any alternative solutions or features you've considered. + validations: + required: false + - type: textarea + attributes: + label: Additional context + description: Add any other context or screenshots about the feature request. + validations: + required: false diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..5d88d2a --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,22 @@ +## The Issue + +- # + + + +## How This PR Solves The Issue + +## Manual Testing Instructions + +```bash +ddev add-on get https://github.com///tarball/ +ddev restart +``` + +## Automated Testing Overview + + + +## Release/Deployment Notes + + From 3991f38491701f31a7261f8e51bb70a0b2518764 Mon Sep 17 00:00:00 2001 From: Stanislav Zhuk Date: Mon, 28 Apr 2025 14:58:21 +0300 Subject: [PATCH 3/9] test(*): update bats (#21) --- .github/workflows/tests.yml | 8 +-- tests/test.bats | 99 +++++++++++++++++++++++++------------ 2 files changed, 73 insertions(+), 34 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index bdece33..19ddfe5 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -17,13 +17,15 @@ on: required: false default: false -# This is required for "gautamkrishnar/keepalive-workflow" +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + permissions: - actions: write + contents: read jobs: tests: - strategy: matrix: ddev_version: [stable, HEAD] diff --git a/tests/test.bats b/tests/test.bats index bb2a0f6..9baa2a1 100644 --- a/tests/test.bats +++ b/tests/test.bats @@ -1,56 +1,93 @@ +#!/usr/bin/env bats + +# Bats is a testing framework for Bash +# Documentation https://bats-core.readthedocs.io/en/stable/ +# Bats libraries documentation https://github.com/ztombol/bats-docs + +# For local tests, install bats-core, bats-assert, bats-file, bats-support +# And run this in the add-on root directory: +# bats ./tests/test.bats +# To exclude release tests: +# bats ./tests/test.bats --filter-tags '!release' +# For debugging: +# bats ./tests/test.bats --show-output-of-passing-tests --verbose-run --print-output-on-failure + setup() { set -eu -o pipefail - brew_prefix=$(brew --prefix) - load "${brew_prefix}/lib/bats-support/load.bash" - load "${brew_prefix}/lib/bats-assert/load.bash" - - export DIR="$( cd "$( dirname "$BATS_TEST_FILENAME" )" >/dev/null 2>&1 && pwd )/.." - export TESTDIR=~/tmp/testrediscommander - mkdir -p $TESTDIR - export PROJNAME=test-redis-commander + + # Override this variable for your add-on: + export GITHUB_REPO=ddev/ddev-redis-commander + + TEST_BREW_PREFIX="$(brew --prefix 2>/dev/null || true)" + export BATS_LIB_PATH="${BATS_LIB_PATH}:${TEST_BREW_PREFIX}/lib:/usr/lib/bats" + bats_load_library bats-assert + bats_load_library bats-file + bats_load_library bats-support + + export DIR="$(cd "$(dirname "${BATS_TEST_FILENAME}")/.." >/dev/null 2>&1 && pwd)" + export PROJNAME="test-$(basename "${GITHUB_REPO}")" + mkdir -p ~/tmp + export TESTDIR=$(mktemp -d ~/tmp/${PROJNAME}.XXXXXX) export DDEV_NONINTERACTIVE=true - ddev delete -Oy ${PROJNAME} >/dev/null 2>&1 || true + export DDEV_NO_INSTRUMENTATION=true + ddev delete -Oy "${PROJNAME}" >/dev/null 2>&1 || true cd "${TESTDIR}" - ddev config --project-name=${PROJNAME} - ddev start -y >/dev/null - # Redis add-on is required for Redis Commander - ddev add-on get ddev/ddev-redis >/dev/null -} + run ddev config --project-name="${PROJNAME}" --project-tld=ddev.site + assert_success + run ddev start -y + assert_success -teardown() { - set -eu -o pipefail - cd ${TESTDIR} || ( printf "unable to cd to ${TESTDIR}\n" && exit 1 ) - ddev delete -Oy ${PROJNAME} >/dev/null 2>&1 - [ "${TESTDIR}" != "" ] && rm -rf ${TESTDIR} + # Redis add-on is required for Redis Commander + run ddev add-on get ddev/ddev-redis + assert_success } health_checks() { - set +u # bats-assert has unset variables so turn off unset check - # ddev restart is required because we have done `ddev get` on a new service - run ddev restart + run curl -sfI http://${PROJNAME}.ddev.site:1358 assert_success - # Make sure we can hit the HTTP port successfully - URL=$(ddev describe -j ${PROJNAME} | jq -r .raw.services.\"redis-commander\".http_url) - curl -s --fail "${URL}" | grep "Redis Commander: Home" + assert_output --partial "HTTP/1.1 200" + + run curl -sf http://${PROJNAME}.ddev.site:1358 + assert_success + assert_output --partial "<title>Redis Commander: Home" + + run curl -sfI https://${PROJNAME}.ddev.site:1359 + assert_success + assert_output --partial "HTTP/2 200" + + run curl -sf https://${PROJNAME}.ddev.site:1359 + assert_success + assert_output --partial "<title>Redis Commander: Home" + # Make sure `ddev redis-commander` works DDEV_DEBUG=true run ddev redis-commander assert_success assert_output --partial "FULLURL https://${PROJNAME}.ddev.site:1359" } +teardown() { + set -eu -o pipefail + ddev delete -Oy ${PROJNAME} >/dev/null 2>&1 + [ "${TESTDIR}" != "" ] && rm -rf ${TESTDIR} +} + @test "install from directory" { set -eu -o pipefail - cd ${TESTDIR} - echo "# ddev add-on get ${DIR} with project ${PROJNAME} in ${TESTDIR} ($(pwd))" >&3 - ddev add-on get ${DIR} + echo "# ddev add-on get ${DIR} with project ${PROJNAME} in $(pwd)" >&3 + run ddev add-on get "${DIR}" + assert_success + run ddev restart -y + assert_success health_checks } # bats test_tags=release @test "install from release" { set -eu -o pipefail - cd ${TESTDIR} || ( printf "unable to cd to ${TESTDIR}\n" && exit 1 ) - echo "# ddev add-on get ddev/ddev-redis-commander with project ${PROJNAME} in ${TESTDIR} ($(pwd))" >&3 - ddev add-on get ddev/ddev-redis-commander + echo "# ddev add-on get ${GITHUB_REPO} with project ${PROJNAME} in $(pwd)" >&3 + run ddev add-on get "${GITHUB_REPO}" + assert_success + run ddev restart -y + assert_success health_checks } From 82fff1d8d2223a988f7b4b450076587017e79ab8 Mon Sep 17 00:00:00 2001 From: Stanislav Zhuk <stasadev@gmail.com> Date: Mon, 28 Apr 2025 15:05:24 +0300 Subject: [PATCH 4/9] chore(*): add v1.24.3 version constraint, reformat install.yaml (#22) --- install.yaml | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/install.yaml b/install.yaml index e7d2fac..2f546e8 100644 --- a/install.yaml +++ b/install.yaml @@ -1,26 +1,18 @@ name: redis-commander dependencies: -- redis + - redis -# list of files and directories listed that are copied into project .ddev directory project_files: -- docker-compose.redis-commander.yaml -- docker-compose.redis-commander_norouter.yaml -- commands/host/redis-commander + - docker-compose.redis-commander.yaml + - docker-compose.redis-commander_norouter.yaml + - commands/host/redis-commander - -pre_install_actions: - # Ensure we're on DDEV 1.23+. It's required for the `redis-commander` command (launch by port). - - | - #ddev-nodisplay - #ddev-description:Checking DDEV version - (ddev debug capabilities | grep corepack >/dev/null) || (echo "Please upgrade DDEV to v1.23+ to enable launching." && false) +ddev_version_constraint: '>= v1.24.3' post_install_actions: - | #ddev-description:If router disabled, directly expose port - # if ( {{ contains "ddev-router" (list .DdevGlobalConfig.omit_containers | toString) }} ); then printf "#ddev-generated\nservices:\n redis-commander:\n ports:\n - 1358:1358\n" > docker-compose.redis-commander_norouter.yaml fi From 9a25a705ee5f9644a2727347b7faa9c259a7758c Mon Sep 17 00:00:00 2001 From: Stanislav Zhuk <stasadev@gmail.com> Date: Fri, 2 May 2025 04:39:19 +0300 Subject: [PATCH 5/9] feat(*): support for Redis password (#23) --- install.yaml | 17 +++++++++++++++++ tests/test.bats | 25 +++++++++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/install.yaml b/install.yaml index 2f546e8..b7ca1e5 100644 --- a/install.yaml +++ b/install.yaml @@ -16,5 +16,22 @@ post_install_actions: if ( {{ contains "ddev-router" (list .DdevGlobalConfig.omit_containers | toString) }} ); then printf "#ddev-generated\nservices:\n redis-commander:\n ports:\n - 1358:1358\n" > docker-compose.redis-commander_norouter.yaml fi + - | + #ddev-description:If Redis is optimized, set a password + if [ $(ddev dotenv get .ddev/.env.redis --redis-optimized 2>/dev/null) = "true" ]; then + printf "#ddev-generated\nservices:\n redis-commander:\n environment:\n - REDIS_PASSWORD=redis\n" > docker-compose.redis-commander_password.yaml + fi - | echo "You can now use 'ddev redis-commander' to launch Redis Commander UI" + +removal_actions: + - | + #ddev-description:Remove docker-compose.redis-commander_password.yaml file + file=docker-compose.redis-commander_password.yaml + if [ -f "${file}" ]; then + if grep -q '#ddev-generated' "${file}"; then + rm -f "${file}" + else + echo "Unwilling to remove '$DDEV_APPROOT/.ddev/${file}' because it does not have #ddev-generated in it; you can manually delete it if it is safe to delete." + fi + fi diff --git a/tests/test.bats b/tests/test.bats index 9baa2a1..6cf5d66 100644 --- a/tests/test.bats +++ b/tests/test.bats @@ -40,9 +40,17 @@ setup() { # Redis add-on is required for Redis Commander run ddev add-on get ddev/ddev-redis assert_success + + export HAS_OPTIMIZED_CONFIG=false } health_checks() { + if [ "$HAS_OPTIMIZED_CONFIG" = "true" ]; then + assert_file_exist .ddev/docker-compose.redis-commander_password.yaml + else + assert_file_not_exist .ddev/docker-compose.redis-commander_password.yaml + fi + run curl -sfI http://${PROJNAME}.ddev.site:1358 assert_success assert_output --partial "HTTP/1.1 200" @@ -81,6 +89,23 @@ teardown() { health_checks } +@test "install from directory with optimized Redis" { + set -eu -o pipefail + + export HAS_OPTIMIZED_CONFIG=true + + run ddev dotenv set .ddev/.env.redis --redis-optimized=true + assert_success + assert_file_exist .ddev/.env.redis + + echo "# ddev add-on get ${DIR} with project ${PROJNAME} in $(pwd)" >&3 + run ddev add-on get "${DIR}" + assert_success + run ddev restart -y + assert_success + health_checks +} + # bats test_tags=release @test "install from release" { set -eu -o pipefail From 7a868b0f8bf59bda48495eee584d4504284ff071 Mon Sep 17 00:00:00 2001 From: Stanislav Zhuk <stasadev@gmail.com> Date: Fri, 2 May 2025 05:55:18 +0300 Subject: [PATCH 6/9] feat(*): add REDIS_COMMANDER_DOCKER_IMAGE, use `#!/usr/bin/env bash` (#24) --- commands/host/redis-commander | 3 +-- docker-compose.redis-commander.yaml | 7 ++++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/commands/host/redis-commander b/commands/host/redis-commander index b5582a6..764fa79 100644 --- a/commands/host/redis-commander +++ b/commands/host/redis-commander @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash ## #ddev-generated: If you want to edit and own this file, remove this line. ## Description: Launch a browser with Redis Commander @@ -20,4 +20,3 @@ if [ -z "$DDEV_REDIS_COMMANDER_PORT" ]; then fi ddev launch :"$DDEV_REDIS_COMMANDER_PORT" - diff --git a/docker-compose.redis-commander.yaml b/docker-compose.redis-commander.yaml index db609ae..8b65a05 100644 --- a/docker-compose.redis-commander.yaml +++ b/docker-compose.redis-commander.yaml @@ -5,21 +5,22 @@ services: redis-commander: container_name: ddev-${DDEV_SITENAME}-redis-commander hostname: ${DDEV_SITENAME}-redis-commander - image: ghcr.io/joeferner/redis-commander:latest + image: ${REDIS_COMMANDER_DOCKER_IMAGE:-ghcr.io/joeferner/redis-commander:latest} expose: - 1358 labels: com.ddev.site-name: ${DDEV_SITENAME} - com.ddev.approot: $DDEV_APPROOT + com.ddev.approot: ${DDEV_APPROOT} environment: - VIRTUAL_HOST=$DDEV_HOSTNAME - - HTTP_EXPOSE=1358 + - HTTP_EXPOSE=1358:1358 - HTTPS_EXPOSE=1359:1358 - REDIS_PORT=6379 - REDIS_HOST=redis - PORT=1358 volumes: - ".:/mnt/ddev_config" + - "ddev-global-cache:/mnt/ddev-global-cache" depends_on: - redis healthcheck: From 27e7f977f33787b2ae2adf7dd639b891b985ee4f Mon Sep 17 00:00:00 2001 From: Stanislav Zhuk <stasadev@gmail.com> Date: Fri, 2 May 2025 07:03:37 +0300 Subject: [PATCH 7/9] chore(docs): update README.md (#25) --- README.md | 75 ++++++++++++++++++++++++++----------------------------- 1 file changed, 36 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index ae8da16..f8a33c1 100644 --- a/README.md +++ b/README.md @@ -1,74 +1,71 @@ -[![tests](https://github.com/ddev/ddev-redis-commander/actions/workflows/tests.yml/badge.svg)](https://github.com/ddev/ddev-redis-commander/actions/workflows/tests.yml) ![project is maintained](https://img.shields.io/maintenance/yes/2024.svg) +[![add-on registry](https://img.shields.io/badge/DDEV-Add--on_Registry-blue)](https://addons.ddev.com) +[![tests](https://github.com/ddev/ddev-redis-commander/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/ddev/ddev-redis-commander/actions/workflows/tests.yml?query=branch%3Amain) +[![last commit](https://img.shields.io/github/last-commit/ddev/ddev-redis-commander)](https://github.com/ddev/ddev-redis-commander/commits) +[![release](https://img.shields.io/github/v/release/ddev/ddev-redis-commander)](https://github.com/ddev/ddev-redis-commander/releases/latest) ## Redis Commander -This uses Redis Commander to provide a web interface to a redis service on DDEV. +## Overview -## Requirements - -Before installing this add-on, the Redis service must be available, and you have to use one of the following add-ons: - -- [`ddev/ddev-redis` (Redis 6)](https://github.com/ddev/ddev-redis) -- [`ddev/ddev-redis-7` (Redis 7)](https://github.com/ddev/ddev-redis-7) - -For DDEV v1.23.5 or above run - -`ddev add-on get ddev/ddev-redis` or `ddev add-on get ddev/ddev-redis-7` - -For earlier versions of DDEV run +[Redis Commander](https://joeferner.github.io/redis-commander/) is a node.js web application used to view, edit, and manage a Redis database. -`ddev get ddev/ddev-redis` or `ddev get ddev/ddev-redis-7` +This add-on integrates Redis Commander into your [DDEV](https://ddev.com/) project. +## Requirements -## Installation - -For DDEV v1.23.5 or above run - -```bash -ddev add-on get ddev/ddev-redis-commander -``` - -For earlier versions of DDEV run +Before installing this add-on, the [Redis service](https://github.com/ddev/ddev-redis) must be available: ```bash -ddev get ddev/ddev-redis-commander +ddev add-on get ddev/ddev-redis ``` -Then restart your project +## Installation ```bash +ddev add-on get ddev/ddev-redis-commander ddev restart ``` +After installation, make sure to commit the `.ddev` directory to version control. + ## Usage -Access the Redis Commander web interface by running `ddev redis-commander`. +| Command | Description | +| ------- | ----------- | +| `ddev redis-commander` | Open Redis Commander in your browser (`https://<project>.ddev.site:1359`) | +| `ddev describe` | View service status and used ports for Redis Commander | +| `ddev logs -s redis-commander` | Check Redis Commander logs | -### Redis 7 password +## Advanced Customization -At the time of writing, Redis 7 requires a password to connect to it. +You may need to adjust the password depending on your Redis configuration: -In order to connect to Redis 7, you have to set the `REDIS_PASSWORD` environment variable in the `redis-commander` -service. +* A `docker-compose.redis-commander_password.yaml` file is automatically created on install, if we detect that Redis needs one. +* By default, the password is set via `REDIS_PASSWORD=redis` in that file. If you modify it, be sure to remove the `#ddev-generated` comment to prevent your changes from being overwritten. -One way of doing this is to create a `docker-compose.redis_password.yaml` file with the following content: +To change the Docker image: -```yaml -services: - redis-commander: - environment: - - REDIS_PASSWORD=redis +```bash +ddev dotenv set .ddev/.env.redis-commander --redis-commander-docker-image=ghcr.io/joeferner/redis-commander:latest +ddev add-on get ddev/ddev-redis-commander +ddev restart ``` -You may have to adjust the password according to your Redis 7 configuration (`redis` is the default one). -Then, run `ddev restart` to apply the changes. +Make sure to commit the `.ddev/.env.redis-commander` file to version control. +All customization options (use with caution): + +| Variable | Flag | Default | +| -------- | ---- | ------- | +| `REDIS_COMMANDER_DOCKER_IMAGE` | `--redis-commander-docker-image` | `ghcr.io/joeferner/redis-commander:latest` | ## Links * [Multiplatform Images](https://github.com/joeferner/redis-commander/pkgs/container/redis-commander) * GitHub repo: [joeferner/redis-commander](https://github.com/joeferner/redis-commander) +## Credits + **Originally Contributed by [@Graloth](https://github.com/Graloth) in [ddev-contrib](https://github.com/ddev/ddev-contrib/tree/master/docker-compose-services/redis-commander)** **Maintained by [@julienloizelet](https://github.com/julienloizelet)** From ce9834f6244f934d2a5a8564b9dbee42f8abf12d Mon Sep 17 00:00:00 2001 From: Julien Loizelet <julienloizelet@okaeli.com> Date: Fri, 2 May 2025 14:26:41 +0900 Subject: [PATCH 8/9] chore(*): Release 1.4.0 (#26) --- .github/workflows/doc-links.yml | 40 +++++++++++++++++++++++++++++++++ CHANGELOG.md | 17 ++++++++++++++ README.md | 2 +- 3 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/doc-links.yml diff --git a/.github/workflows/doc-links.yml b/.github/workflows/doc-links.yml new file mode 100644 index 0000000..7470e4f --- /dev/null +++ b/.github/workflows/doc-links.yml @@ -0,0 +1,40 @@ +on: + workflow_dispatch: + push: + branches: + - main + pull_request: + branches: + - main + +permissions: + contents: read + +name: Documentation links check +jobs: + markdown-test: + name: Markdown files test + runs-on: ubuntu-latest + steps: + + - name: Clone sources + uses: actions/checkout@v4 + with: + path: extension + + - name: Launch localhost server + run: | + sudo npm install --global http-server + http-server ./extension & + + - name: Set up Ruby 2.6 + uses: ruby/setup-ruby@v1 + with: + ruby-version: 2.6 + + - name: Check links in Markdown files + run: | + gem install awesome_bot + cd extension + awesome_bot --files README.md --allow-dupe --allow 401,301 --skip-save-results --white-list ddev.site,releases/latest --base-url http://localhost:8080/ + diff --git a/CHANGELOG.md b/CHANGELOG.md index 2cdf202..c242e41 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 The [public API](https://semver.org/spec/v2.0.0.html#spec-item-1) of this project is defined by the `install.yaml` file and `project_files` listed in the `install.yaml` file. +--- + + +## [v1.4.0](https://github.com/ddev/ddev-redis-commander/releases/tag/v1.3.0) - 2025-05-02 +[_Compare with previous release_](https://github.com/ddev/ddev-redis-commander/compare/v1.3.0...v1.4.0) + + +### Changed + +- Automatically handle Redis password on install if Redis needs one (see [#23](https://github.com/ddev/ddev-redis-commander/pull/23)) +- Use `#!/usr/bin/env bash` for `redis-commander` command (see [#24](https://github.com/ddev/ddev-redis-commander/pull/24)) + +### Added + +- Add `REDIS_COMMANDER_DOCKER_IMAGE` variable to customize the Docker image (see [#24](https://github.com/ddev/ddev-redis-commander/pull/24)) + + --- ## [v1.3.0](https://github.com/ddev/ddev-redis-commander/releases/tag/v1.3.0) - 2024-10-24 diff --git a/README.md b/README.md index f8a33c1..f651c3a 100644 --- a/README.md +++ b/README.md @@ -66,6 +66,6 @@ All customization options (use with caution): ## Credits -**Originally Contributed by [@Graloth](https://github.com/Graloth) in [ddev-contrib](https://github.com/ddev/ddev-contrib/tree/master/docker-compose-services/redis-commander)** +**Originally Contributed by [@Graloth](https://github.com/Graloth) in [ddev-contrib](https://github.com/ddev/ddev-contrib/tree/64b689730138aaecc9a0f0b72115dbf9f0dfe7a0/docker-compose-services/redis-commander)** **Maintained by [@julienloizelet](https://github.com/julienloizelet)** From 907a95b4f0964966a22c54e5086c29c070838f92 Mon Sep 17 00:00:00 2001 From: Julien Loizelet <julienloizelet@okaeli.com> Date: Fri, 2 May 2025 14:34:48 +0900 Subject: [PATCH 9/9] docs(changelog): Fix 1.4.0 link (#27) --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c242e41..8e1f823 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ The [public API](https://semver.org/spec/v2.0.0.html#spec-item-1) of this projec --- -## [v1.4.0](https://github.com/ddev/ddev-redis-commander/releases/tag/v1.3.0) - 2025-05-02 +## [v1.4.0](https://github.com/ddev/ddev-redis-commander/releases/tag/v1.4.0) - 2025-05-02 [_Compare with previous release_](https://github.com/ddev/ddev-redis-commander/compare/v1.3.0...v1.4.0)