Skip to content

Commit

Permalink
incusd/instance/qemu: Fix variable shadowing
Browse files Browse the repository at this point in the history
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
  • Loading branch information
stgraber committed Jan 24, 2024
1 parent 6c312c8 commit 7985db1
Showing 1 changed file with 11 additions and 10 deletions.
21 changes: 11 additions & 10 deletions internal/server/instance/drivers/driver_qemu.go
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ import (
)

// incus-agent files
//
//go:embed agent-loader/*
var incusAgentLoader embed.FS

Expand Down Expand Up @@ -2608,12 +2609,12 @@ func (d *qemu) generateConfigShare() error {

if util.PathExists(os.Getenv("INCUS_AGENT_PATH")) {
// Install incus-agent script (loads from agent share).
fs, err := incusAgentLoader.ReadFile("agent-loader/incus-agent")
agentFile, err := incusAgentLoader.ReadFile("agent-loader/incus-agent")
if err != nil {
return err
}

err = os.WriteFile(filepath.Join(configDrivePath, "incus-agent"), fs, 0700)
err = os.WriteFile(filepath.Join(configDrivePath, "incus-agent"), agentFile, 0700)
if err != nil {
return err
}
Expand Down Expand Up @@ -2698,25 +2699,25 @@ func (d *qemu) generateConfigShare() error {
// Systemd unit for incus-agent. It ensures the incus-agent is copied from the shared filesystem before it is
// started. The service is triggered dynamically via udev rules when certain virtio-ports are detected,
// rather than being enabled at boot.
fs, err := incusAgentLoader.ReadFile("agent-loader/systemd/incus-agent.service")
agentFile, err := incusAgentLoader.ReadFile("agent-loader/systemd/incus-agent.service")
if err != nil {
return err
}

err = os.WriteFile(filepath.Join(configDrivePath, "systemd", "incus-agent.service"), fs, 0400)
err = os.WriteFile(filepath.Join(configDrivePath, "systemd", "incus-agent.service"), agentFile, 0400)
if err != nil {
return err
}

// Setup script for incus-agent that is executed by the incus-agent systemd unit before incus-agent is started.
// The script sets up a temporary mount point, copies data from the mount (including incus-agent binary),
// and then unmounts it. It also ensures appropriate permissions for the Incus agent's runtime directory.
fs, err = incusAgentLoader.ReadFile("agent-loader/incus-agent-setup")
agentFile, err = incusAgentLoader.ReadFile("agent-loader/incus-agent-setup")
if err != nil {
return err
}

err = os.WriteFile(filepath.Join(configDrivePath, "systemd", "incus-agent-setup"), fs, 0500)
err = os.WriteFile(filepath.Join(configDrivePath, "systemd", "incus-agent-setup"), agentFile, 0500)
if err != nil {
return err
}
Expand All @@ -2727,23 +2728,23 @@ func (d *qemu) generateConfigShare() error {
}

// Udev rules to start the incus-agent.service when QEMU serial devices (symlinks in virtio-ports) appear.
fs, err = incusAgentLoader.ReadFile("agent-loader/systemd/incus-agent.rules")
agentFile, err = incusAgentLoader.ReadFile("agent-loader/systemd/incus-agent.rules")
if err != nil {
return err
}

err = os.WriteFile(filepath.Join(configDrivePath, "udev", "99-incus-agent.rules"), fs, 0400)
err = os.WriteFile(filepath.Join(configDrivePath, "udev", "99-incus-agent.rules"), agentFile, 0400)
if err != nil {
return err
}

// Install script for manual installs.
fs, err = incusAgentLoader.ReadFile("agent-loader/install.sh")
agentFile, err = incusAgentLoader.ReadFile("agent-loader/install.sh")
if err != nil {
return err
}

err = os.WriteFile(filepath.Join(configDrivePath, "install.sh"), fs, 0700)
err = os.WriteFile(filepath.Join(configDrivePath, "install.sh"), agentFile, 0700)
if err != nil {
return err
}
Expand Down

0 comments on commit 7985db1

Please sign in to comment.