Skip to content

Commit

Permalink
fix(snap): Refactor to avoid conflicts with readonly config provider …
Browse files Browse the repository at this point in the history
…directory

Changes to incorporate the following fixes:
- canonical/edgex-snap-hooks#83
- canonical/edgex-snap-hooks#82

Signed-off-by: Mengyi Wang <[email protected]>
  • Loading branch information
MonicaisHer committed Mar 17, 2023
1 parent 0370fe2 commit 21a3fe4
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 20 deletions.
16 changes: 2 additions & 14 deletions snap/local/bin/source-env-file.sh
Original file line number Diff line number Diff line change
@@ -1,16 +1,4 @@
#!/bin/bash -e

EDGEX_STARTUP_DURATION=$(snapctl get startup-duration)

if [ -n "$EDGEX_STARTUP_DURATION" ]; then
export EDGEX_STARTUP_DURATION
fi

EDGEX_STARTUP_INTERVAL=$(snapctl get startup-interval)

if [ -n "$EDGEX_STARTUP_INTERVAL" ]; then
export EDGEX_STARTUP_INTERVAL
fi
#!/bin/bash -ex

# convert cmdline to string array
ARGV=($@)
Expand All @@ -20,7 +8,7 @@ BINPATH="${ARGV[0]}"

# binary name == service name/key
SERVICE=$(basename "$BINPATH")
ENV_FILE="$SNAP_DATA/config/$SERVICE/res/$SERVICE.env"
ENV_FILE="$SNAP_DATA/config/$SERVICE/overrides.env"
TAG="edgex-$SERVICE."$(basename "$0")

if [ -f "$ENV_FILE" ]; then
Expand Down
2 changes: 1 addition & 1 deletion snap/local/helper-go/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ module github.com/edgexfoundry/app-rfid-llrp-inventory/local/helper-go

go 1.20

require github.com/canonical/edgex-snap-hooks/v3 v3.0.0-20230112170125-c0580fb68dab
require github.com/canonical/edgex-snap-hooks/v3 v3.0.0-20230315153603-544c6823a1b0
6 changes: 3 additions & 3 deletions snap/local/helper-go/go.sum
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
github.com/canonical/edgex-snap-hooks/v3 v3.0.0-20230112170125-c0580fb68dab h1:wpiKN0hX8tqeZNa4jPvgyrqP8ixm1Xu7lcQA3bypR7w=
github.com/canonical/edgex-snap-hooks/v3 v3.0.0-20230112170125-c0580fb68dab/go.mod h1:RvJ48YbdBPZn7L8OcylOpKIlIJD+nMjo5D7WSnPYusY=
github.com/canonical/edgex-snap-hooks/v3 v3.0.0-20230315153603-544c6823a1b0 h1:h2C5W3mEC5g/s9W/mwh7X/3uSqKjNln/xHP41i8Mw/M=
github.com/canonical/edgex-snap-hooks/v3 v3.0.0-20230315153603-544c6823a1b0/go.mod h1:qGZwprCZGZk2pA9BrleUtSrGrfHIaIz1356p8aqzuN4=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
12 changes: 10 additions & 2 deletions snap/local/helper-go/install.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import (
hooks "github.com/canonical/edgex-snap-hooks/v3"
"github.com/canonical/edgex-snap-hooks/v3/env"
"github.com/canonical/edgex-snap-hooks/v3/log"
"github.com/canonical/edgex-snap-hooks/v3/snapctl"
)

// installConfig copies all config files from $SNAP to $SNAP_DATA
Expand All @@ -32,7 +33,14 @@ func installConfig() error {
func install() {
log.SetComponentName("install")

if err := installConfig(); err != nil {
log.Fatalf("Error installing config files: %s", err)
// Install default config files only if no config provider is connected
isConnected, err := snapctl.IsConnected(app + "-config").Run()
if err != nil {
log.Fatalf("Error checking interface connection: %s", err)
}
if !isConnected {
if err := installConfig(); err != nil {
log.Fatalf("Error installing config files: %s", err)
}
}
}

0 comments on commit 21a3fe4

Please sign in to comment.