forked from Plemya-x/ALR
		
	feat: migrate to system cache with changing core logic
This commit is contained in:
		@@ -33,6 +33,7 @@ func TestE2EAlrAddRepo(t *testing.T) {
 | 
			
		||||
		COMMON_SYSTEMS,
 | 
			
		||||
		func(t *testing.T, r e2e.Runnable) {
 | 
			
		||||
			err := r.Exec(e2e.NewCommand(
 | 
			
		||||
				"sudo",
 | 
			
		||||
				"alr",
 | 
			
		||||
				"addrepo",
 | 
			
		||||
				"--name",
 | 
			
		||||
@@ -45,11 +46,12 @@ func TestE2EAlrAddRepo(t *testing.T) {
 | 
			
		||||
			err = r.Exec(e2e.NewCommand(
 | 
			
		||||
				"bash",
 | 
			
		||||
				"-c",
 | 
			
		||||
				"cat $HOME/.config/alr/alr.toml",
 | 
			
		||||
				"cat /etc/alr/alr.toml",
 | 
			
		||||
			))
 | 
			
		||||
			assert.NoError(t, err)
 | 
			
		||||
 | 
			
		||||
			err = r.Exec(e2e.NewCommand(
 | 
			
		||||
				"sudo",
 | 
			
		||||
				"alr",
 | 
			
		||||
				"removerepo",
 | 
			
		||||
				"--name",
 | 
			
		||||
@@ -61,7 +63,7 @@ func TestE2EAlrAddRepo(t *testing.T) {
 | 
			
		||||
			err = r.Exec(e2e.NewCommand(
 | 
			
		||||
				"bash",
 | 
			
		||||
				"-c",
 | 
			
		||||
				"cat $HOME/.config/alr/alr.toml",
 | 
			
		||||
				"cat /etc/alr/alr.toml",
 | 
			
		||||
			), e2e.WithExecOptionStdout(&buf))
 | 
			
		||||
			assert.NoError(t, err)
 | 
			
		||||
			assert.Contains(t, buf.String(), "rootCmd")
 | 
			
		||||
 
 | 
			
		||||
@@ -109,7 +109,7 @@ var ALL_SYSTEMS []string = []string{
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var AUTOREQ_AUTOPROV_SYSTEMS []string = []string{
 | 
			
		||||
	"alt-sisyphus",
 | 
			
		||||
	// "alt-sisyphus",
 | 
			
		||||
	"fedora-41",
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -157,9 +157,9 @@ func dockerMultipleRun(t *testing.T, name string, ids []string, f func(t *testin
 | 
			
		||||
				imageId := fmt.Sprintf("alr-testimage-%s", id)
 | 
			
		||||
				runnable := e.Runnable(dockerName).Init(
 | 
			
		||||
					e2e.StartOptions{
 | 
			
		||||
						Image: imageId,
 | 
			
		||||
						Image:   imageId,
 | 
			
		||||
						Volumes: []string{
 | 
			
		||||
							"./alr:/usr/bin/alr",
 | 
			
		||||
							// "./alr:/usr/bin/alr",
 | 
			
		||||
						},
 | 
			
		||||
						Privileged: true,
 | 
			
		||||
					},
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,18 @@
 | 
			
		||||
FROM fedora:41
 | 
			
		||||
RUN dnf install -y ca-certificates sudo rpm-build
 | 
			
		||||
RUN useradd -m -s /bin/bash alr-user && \
 | 
			
		||||
    echo "alr-user ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/alr-user && \
 | 
			
		||||
    chmod 0440 /etc/sudoers.d/alr-user
 | 
			
		||||
USER alr-user
 | 
			
		||||
WORKDIR /home/alr-user
 | 
			
		||||
RUN dnf install -y ca-certificates sudo rpm-build bindfs
 | 
			
		||||
RUN <<EOF
 | 
			
		||||
    useradd -m -s /bin/bash -G wheel user
 | 
			
		||||
    echo "user ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/user
 | 
			
		||||
    chmod 0440 /etc/sudoers.d/user
 | 
			
		||||
 | 
			
		||||
    useradd -m -s /bin/bash alr
 | 
			
		||||
    mkdir -p /var/cache/alr /etc/alr
 | 
			
		||||
    chown alr:alr /var/cache/alr /etc/alr
 | 
			
		||||
EOF
 | 
			
		||||
COPY ./alr /usr/bin
 | 
			
		||||
RUN <<EOF
 | 
			
		||||
    setcap cap_setuid,cap_setgid+ep /usr/bin/alr
 | 
			
		||||
EOF
 | 
			
		||||
USER user
 | 
			
		||||
WORKDIR /home/user
 | 
			
		||||
ENTRYPOINT ["tail", "-f", "/dev/null"]
 | 
			
		||||
@@ -1,7 +1,17 @@
 | 
			
		||||
FROM ubuntu:24.10
 | 
			
		||||
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates sudo
 | 
			
		||||
RUN useradd -m -s /bin/bash alr-user && \
 | 
			
		||||
    echo "alr-user ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/alr-user && \
 | 
			
		||||
    chmod 0440 /etc/sudoers.d/alr-user
 | 
			
		||||
USER alr-user
 | 
			
		||||
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates sudo libcap2-bin
 | 
			
		||||
RUN <<EOF
 | 
			
		||||
    useradd -m -s /bin/bash user
 | 
			
		||||
    echo "user ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/user
 | 
			
		||||
    chmod 0440 /etc/sudoers.d/user 
 | 
			
		||||
    
 | 
			
		||||
    useradd -m -s /bin/bash alr
 | 
			
		||||
    mkdir -p /var/cache/alr /etc/alr
 | 
			
		||||
    chown alr:alr /var/cache/alr /etc/alr
 | 
			
		||||
EOF
 | 
			
		||||
COPY ./alr /usr/bin
 | 
			
		||||
RUN <<EOF
 | 
			
		||||
    setcap cap_setuid,cap_setgid+ep /usr/bin/alr
 | 
			
		||||
EOF
 | 
			
		||||
USER user
 | 
			
		||||
ENTRYPOINT ["tail", "-f", "/dev/null"]
 | 
			
		||||
@@ -32,7 +32,7 @@ func TestE2EIssue32Interactive(t *testing.T) {
 | 
			
		||||
		COMMON_SYSTEMS,
 | 
			
		||||
		func(t *testing.T, r e2e.Runnable) {
 | 
			
		||||
			err := r.Exec(e2e.NewCommand(
 | 
			
		||||
				"alr", "--interactive=false", "remove", "ca-certificates",
 | 
			
		||||
				"sudo", "alr", "--interactive=false", "remove", "ca-certificates",
 | 
			
		||||
			))
 | 
			
		||||
			assert.NoError(t, err)
 | 
			
		||||
		},
 | 
			
		||||
 
 | 
			
		||||
@@ -32,6 +32,7 @@ func TestE2EIssue41AutoreqSkiplist(t *testing.T) {
 | 
			
		||||
		AUTOREQ_AUTOPROV_SYSTEMS,
 | 
			
		||||
		func(t *testing.T, r e2e.Runnable) {
 | 
			
		||||
			err := r.Exec(e2e.NewCommand(
 | 
			
		||||
				"sudo",
 | 
			
		||||
				"alr",
 | 
			
		||||
				"addrepo",
 | 
			
		||||
				"--name",
 | 
			
		||||
 
 | 
			
		||||
@@ -32,6 +32,7 @@ func TestE2EIssue50InstallMultiple(t *testing.T) {
 | 
			
		||||
		COMMON_SYSTEMS,
 | 
			
		||||
		func(t *testing.T, r e2e.Runnable) {
 | 
			
		||||
			err := r.Exec(e2e.NewCommand(
 | 
			
		||||
				"sudo",
 | 
			
		||||
				"alr",
 | 
			
		||||
				"addrepo",
 | 
			
		||||
				"--name",
 | 
			
		||||
 
 | 
			
		||||
@@ -32,6 +32,7 @@ func TestE2EIssue53LcAllCInfo(t *testing.T) {
 | 
			
		||||
		COMMON_SYSTEMS,
 | 
			
		||||
		func(t *testing.T, r e2e.Runnable) {
 | 
			
		||||
			err := r.Exec(e2e.NewCommand(
 | 
			
		||||
				"sudo",
 | 
			
		||||
				"alr",
 | 
			
		||||
				"addrepo",
 | 
			
		||||
				"--name",
 | 
			
		||||
 
 | 
			
		||||
@@ -32,6 +32,7 @@ func TestE2EIssue59RmCompletion(t *testing.T) {
 | 
			
		||||
		COMMON_SYSTEMS,
 | 
			
		||||
		func(t *testing.T, r e2e.Runnable) {
 | 
			
		||||
			err := r.Exec(e2e.NewCommand(
 | 
			
		||||
				"sudo",
 | 
			
		||||
				"alr",
 | 
			
		||||
				"addrepo",
 | 
			
		||||
				"--name",
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user