GoogleCloudPlatform / GoogleCloudPlatform/compute-image-import

Inspection fails on Debian Testing

Open
#113 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
26
Forks
31
Avg merge
1d 21h
Merged PRs (30d)
3

Description

The image consists of the following:
- One 15 MiB EFI System Partition, formatted as FAT, containing GRUB 2.06 for x86-64
- One ~30 GiB root partition, formatted as EXT4, containing an install of Debian Testing

`/etc/os-release`:
```
PRETTY_NAME="Debian GNU/Linux trixie/sid"
NAME="Debian GNU/Linux"
VERSION_CODENAME=trixie
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
```

`/etc/debian_version`:
```
trixie/sid
```

Here is the log output from the GCP importer:

```
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: Inspecting OS
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: Failed to inspect OS: 'NoneType' object has no attribute 'major'
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: Traceback (most recent call last):
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: File "/usr/local/lib/python3.9/dist-packages/boot_inspect/cli.py", line 135, in main
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: results = inspection.inspect_device(g)
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: File "/usr/local/lib/python3.9/dist-packages/boot_inspect/inspection.py", line 139, in inspect_device
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: operating_system = linux.Inspector(fs, _LINUX).inspect()
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: File "/usr/local/lib/python3.9/dist-packages/boot_inspect/inspectors/os/linux.py", line 184, in inspect
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: match = d.match(self._fs)
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: File "/usr/local/lib/python3.9/dist-packages/boot_inspect/inspectors/os/linux.py", line 160, in match
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: major_version=version.major,
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: AttributeError: 'NoneType' object has no attribute 'major'
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url:
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: During handling of the above exception, another exception occurred:
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url:
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: Traceback (most recent call last):
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: File "/usr/local/bin/boot-inspect", line 8, in
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: sys.exit(main())
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: File "/usr/local/lib/python3.9/dist-packages/boot_inspect/cli.py", line 138, in main
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: results.ErrorWhen = inspect_pb2.InspectionResults.ErrorWhen.INSPECTING_OS
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: AttributeError: 'InspectionResults' object attribute 'ErrorWhen' is read-only
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: + echo Failed:
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url: Failed:
Jul 29 15:11:49 debian google_metadata_script_runner[863]: startup-script-url exit status 0
```

Contributor guide

Open the contributing guide

Research direction

Start with boot_inspect/inspectors/os/linux.py at the match logic around line 160, then trace the call from boot_inspect/inspection.py:139 and the error handling in boot_inspect/cli.py:135. Reproduce inspection against the reported Debian trixie/sid image and verify that OS inspection completes without the shown AttributeError.

Written by the indexing model from the issue text.

Assessment

Tech stack
debian, google-cloud, linux, python
Domain
cloud, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.