Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

First time setup and checkout latest release leads to manifest unknown #777

Closed
def1nity opened this issue Feb 1, 2022 · 1 comment
Closed

Comments

@def1nity
Copy link

def1nity commented Feb 1, 2022

Hi everyone, I will start by saying that I'm a noob with docker, kubernetes, git, awx, etc so I followed the minikube installation instructions/readme very carefully and had a couple of issues. First one is nothing major, but if you could include make the following part of the instructions a bit clearer it would greatly help noobs like me! Maybe for anyone who is not new it is obvious but as a total noob I lost a lot of time figuring out the issues one-by-one... So the instructions say:

"
Clone this repo and git checkout the latest version from https://github.com/ansible/awx-operator/releases, and then run the following command:

$ export NAMESPACE=my-namespace
$ make deploy
...
"

Please include a note that between the clone and the export, one should actually cd into the newly created directory from the git clone command and only then to checkout etc... Also a tip on which checkout method to use would be awesome as I found at least 3-4 while researching the issue...

This leads me to the bigger issue - while trying to setup the operator with minikube the pod kept coming back with ErrImagePull, here is what happened when trying with, as per the readme "the latest" release - origin/devel:

(awx) wls@Prime:/virtual$ git clone https://github.com/ansible/awx-operator.git
Cloning into 'awx-operator'...
remote: Enumerating objects: 6069, done.
remote: Counting objects: 100% (94/94), done.
remote: Compressing objects: 100% (75/75), done.
remote: Total 6069 (delta 39), reused 48 (delta 13), pack-reused 5975
Receiving objects: 100% (6069/6069), 1.48 MiB | 10.32 MiB/s, done.
Resolving deltas: 100% (3446/3446), done.
(awx) wls@Prime:
/virtual$ cd awx-operator/
(awx) wls@Prime:~/virtual/awx-operator$ git checkout origin/devel
Note: switching to 'origin/devel'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

git switch -c

Or undo this operation with:

git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 3a3260f Merge pull request #770 from john-westcott-iv/github_meta_changes
(awx) wls@Prime:/virtual/awx-operator$ ls
CHANGELOG.md CONTRIBUTING.md Dockerfile LICENSE Makefile PROJECT README.md ansible awx-demo.yml config docs molecule playbooks projects requirements.yml roles vendor watches.yaml
(awx) wls@Prime:
/virtual/awx-operator$ make deploy
namespace/awx-demo123 created
customresourcedefinition.apiextensions.k8s.io/awxbackups.awx.ansible.com created
customresourcedefinition.apiextensions.k8s.io/awxrestores.awx.ansible.com created
customresourcedefinition.apiextensions.k8s.io/awxs.awx.ansible.com created
serviceaccount/awx-operator-controller-manager created
role.rbac.authorization.k8s.io/awx-operator-awx-manager-role created
role.rbac.authorization.k8s.io/awx-operator-leader-election-role created
clusterrole.rbac.authorization.k8s.io/awx-operator-metrics-reader created
clusterrole.rbac.authorization.k8s.io/awx-operator-proxy-role created
rolebinding.rbac.authorization.k8s.io/awx-operator-awx-manager-rolebinding created
rolebinding.rbac.authorization.k8s.io/awx-operator-leader-election-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/awx-operator-proxy-rolebinding created
configmap/awx-operator-awx-manager-config created
service/awx-operator-controller-manager-metrics-service created
deployment.apps/awx-operator-controller-manager created
(awx) wls@Prime:~/virtual/awx-operator$ kubectl get pods -A
NAMESPACE NAME READY STATUS RESTARTS AGE
awx-demo123 awx-operator-controller-manager-5df5899db5-rlwkm 1/2 ErrImagePull 0 9s
ingress-nginx ingress-nginx-admission-create-v2f7j 0/1 Completed 0 95m
ingress-nginx ingress-nginx-admission-patch-kmdcq 0/1 Completed 1 95m
ingress-nginx ingress-nginx-controller-6d5f55986b-znxnx 1/1 Running 0 95m
kube-system coredns-64897985d-dpfnk 1/1 Running 0 95m
kube-system etcd-minikube 1/1 Running 0 95m
kube-system kube-apiserver-minikube 1/1 Running 0 95m
kube-system kube-controller-manager-minikube 1/1 Running 0 95m
kube-system kube-flannel-ds-amd64-gpn99 1/1 Running 0 95m
kube-system kube-proxy-wwd4g 1/1 Running 0 95m
kube-system kube-scheduler-minikube 1/1 Running 0 95m
kube-system storage-provisioner 1/1 Running 1 (95m ago) 95m

(awx) wls@Prime:~/virtual/awx-operator$ kubectl describe pods -A -n awx-demo123

Events:
Type Reason Age From Message


Normal Scheduled 40s default-scheduler Successfully assigned awx-demo123/awx-operator-controller-manager-5df5899db5-rlwkm to minikube
Normal Pulled 38s kubelet Container image "gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0" already present on machine
Normal Created 38s kubelet Created container kube-rbac-proxy
Normal Started 38s kubelet Started container kube-rbac-proxy
Normal Pulling 24s (x2 over 38s) kubelet Pulling image "quay.io/ansible/awx-operator:0.16.1-3-g3a3260f"
Warning Failed 21s (x2 over 36s) kubelet Failed to pull image "quay.io/ansible/awx-operator:0.16.1-3-g3a3260f": rpc error: code = Unknown desc = Error response from daemon: manifest for quay.io/ansible/awx-operator:0.16.1-3-g3a3260f not found: manifest unknown: manifest unknown
Warning Failed 21s (x2 over 36s) kubelet Error: ErrImagePull
Normal BackOff 8s (x2 over 35s) kubelet Back-off pulling image "quay.io/ansible/awx-operator:0.16.1-3-g3a3260f"
Warning Failed 8s (x2 over 35s) kubelet Error: ImagePullBackOff

When I tested by selecting the latest tag by the number, everything worked fine:

(awx) wls@Prime:/virtual$ git clone https://github.com/ansible/awx-operator.git
Cloning into 'awx-operator'...
remote: Enumerating objects: 6069, done.
remote: Counting objects: 100% (94/94), done.
remote: Compressing objects: 100% (75/75), done.
remote: Total 6069 (delta 39), reused 48 (delta 13), pack-reused 5975
Receiving objects: 100% (6069/6069), 1.48 MiB | 9.76 MiB/s, done.
Resolving deltas: 100% (3468/3468), done.
(awx) wls@Prime:
/virtual$ cd awx-operator/
(awx) wls@Prime:/virtual/awx-operator$ git tag -l
0.10.0
0.11.0
0.12.0
0.13.0
0.14.0
0.15.0
0.16.0
0.16.1
0.6.0
0.7.0
0.8.0
0.9.0
(awx) wls@Prime:
/virtual/awx-operator$ git checkout tags/0.16.1
Note: switching to 'tags/0.16.1'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

git switch -c

Or undo this operation with:

git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at d27ce3c Merge pull request #755 from rooftopcellist/mv-data-subPath
(awx) wls@Prime:/virtual/awx-operator$ make deploy
namespace/awx-demo123 created
customresourcedefinition.apiextensions.k8s.io/awxbackups.awx.ansible.com unchanged
customresourcedefinition.apiextensions.k8s.io/awxrestores.awx.ansible.com unchanged
customresourcedefinition.apiextensions.k8s.io/awxs.awx.ansible.com unchanged
serviceaccount/awx-operator-controller-manager created
role.rbac.authorization.k8s.io/awx-operator-awx-manager-role created
role.rbac.authorization.k8s.io/awx-operator-leader-election-role created
clusterrole.rbac.authorization.k8s.io/awx-operator-metrics-reader unchanged
clusterrole.rbac.authorization.k8s.io/awx-operator-proxy-role unchanged
rolebinding.rbac.authorization.k8s.io/awx-operator-awx-manager-rolebinding created
rolebinding.rbac.authorization.k8s.io/awx-operator-leader-election-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/awx-operator-proxy-rolebinding unchanged
configmap/awx-operator-awx-manager-config created
service/awx-operator-controller-manager-metrics-service created
deployment.apps/awx-operator-controller-manager created
(awx) wls@Prime:
/virtual/awx-operator$ kubectl get pods -A
NAMESPACE NAME READY STATUS RESTARTS AGE
awx-demo123 awx-operator-controller-manager-6c96d9b446-w7zxm 1/2 Running 0 5s
ingress-nginx ingress-nginx-admission-create-v2f7j 0/1 Completed 0 99m
ingress-nginx ingress-nginx-admission-patch-kmdcq 0/1 Completed 1 99m
ingress-nginx ingress-nginx-controller-6d5f55986b-znxnx 1/1 Running 0 99m
kube-system coredns-64897985d-dpfnk 1/1 Running 0 99m
kube-system etcd-minikube 1/1 Running 0 100m
kube-system kube-apiserver-minikube 1/1 Running 0 100m
kube-system kube-controller-manager-minikube 1/1 Running 0 100m
kube-system kube-flannel-ds-amd64-gpn99 1/1 Running 0 99m
kube-system kube-proxy-wwd4g 1/1 Running 0 99m
kube-system kube-scheduler-minikube 1/1 Running 0 100m
kube-system storage-provisioner 1/1 Running 1 (99m ago) 99m
(awx) wls@Prime:~/virtual/awx-operator$ kubectl describe pods -n awx-demo123

Events:
Type Reason Age From Message


Normal Scheduled 2m6s default-scheduler Successfully assigned awx-demo123/awx-operator-controller-manager-6c96d9b446-w7zxm to minikube
Normal Pulled 2m5s kubelet Container image "gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0" already present on machine
Normal Created 2m5s kubelet Created container kube-rbac-proxy
Normal Started 2m4s kubelet Started container kube-rbac-proxy
Normal Pulling 2m4s kubelet Pulling image "quay.io/ansible/awx-operator:0.16.1"
Normal Pulled 90s kubelet Successfully pulled image "quay.io/ansible/awx-operator:0.16.1" in 34.515414595s
Normal Created 89s kubelet Created container awx-manager
Normal Started 88s kubelet Started container awx-manager

When checking the tag history on quay.io I found:

  Feb 1, 2022  
  devel was moved to SHA256 a7ac8a01e292 from SHA256 60418f57c27a Tue, Feb 1, 2022 8:16 PM

and the second key opens a manifest unknown page, unlike the rest which open fine.

I thought the issue is worth reporting and also I wanted to say that the installation instructions need a bit of work.

Thanks!

@shanemcd
Copy link
Member

shanemcd commented Feb 1, 2022

Ultimately we want to remove the need for running make. See #657

But in the meantime, the readme does say:

Clone this repo and git checkout the latest version from https://github.com/ansible/awx-operator/releases

Please open a PR with any improvements you would like to see.

@shanemcd shanemcd closed this as completed Feb 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants