This change makes password authentication required for redis usage, and removes anonymous access. Users will need to change their underlying clients to enable writing the auth token for authenticating, otherwise requests will fail. This is a non-optional change, and improves security for users who wish to expose their redis installations outside of their network.
38 lines
1.3 KiB
Bash
Executable File
38 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bats
|
|
load test_helper
|
|
|
|
setup() {
|
|
export ECHO_DOCKER_COMMAND="false"
|
|
dokku "$PLUGIN_COMMAND_PREFIX:create" l >&2
|
|
echo "data" > "$PLUGIN_DATA_ROOT/fake.rdb"
|
|
}
|
|
|
|
teardown() {
|
|
export ECHO_DOCKER_COMMAND="false"
|
|
dokku --force "$PLUGIN_COMMAND_PREFIX:destroy" l >&2
|
|
rm -f "$PLUGIN_DATA_ROOT/fake.rdb"
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:import) error when there are no arguments" {
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:import"
|
|
assert_contains "${lines[*]}" "Please specify a name for the service"
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:import) error when service does not exist" {
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:import" not_existing_service
|
|
assert_contains "${lines[*]}" "service not_existing_service does not exist"
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:import) error when data is not provided" {
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:import" l
|
|
assert_contains "${lines[*]}" "No data provided on stdin"
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:import) success" {
|
|
export ECHO_DOCKER_COMMAND="true"
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:import" l < "$PLUGIN_DATA_ROOT/fake.rdb"
|
|
password="$(cat "$PLUGIN_DATA_ROOT/l/PASSWORD")"
|
|
assert_output "docker run --rm -i -v $PLUGIN_DATA_ROOT/l/data:/data redis:3.2.3 bash -c cat > /data/dump.rdb && chown redis: /data/dump.rdb"
|
|
}
|
|
|