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

Feature/debian installer #6803

Merged
merged 11 commits into from
Feb 15, 2022
Merged

Feature/debian installer #6803

merged 11 commits into from
Feb 15, 2022

Conversation

julsemaan
Copy link
Collaborator

Description

Adds tooling to create an ISO installer for PacketFence based on Debian 11.2

Impacts

Nothing, just adds tooling

Delete branch after merge

YES

Checklist

(REQUIRED) - [yes, no or n/a]

  • Document the feature
  • [N/A] Add unit tests
  • Add acceptance tests (TestLink)

@julsemaan
Copy link
Collaborator Author

This still needs to be integrated in our release pipeline, I tested the ISO manually and I get through the configurator

@julsemaan julsemaan force-pushed the feature/debian-installer branch from f7b2b02 to a1c3df7 Compare January 21, 2022 18:32
@julsemaan
Copy link
Collaborator Author

This should be ready, @nqb, can you review?

You can download the ISO from here if you want to test:
https://sourceforge.net/projects/packetfence/files/PacketFence%20ISO/feature-debian-installer/

Copy link
Contributor

@nqb nqb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor changes but it looks good. I didn't test ZEN ISO.

General question: I compare preseed.cfg.tmpl with preseed.cfg used for ZEN. I see password is not set but I think it's to let user define it.

@julsemaan
Copy link
Collaborator Author

Minor changes but it looks good. I didn't test ZEN ISO.

General question: I compare preseed.cfg.tmpl with preseed.cfg used for ZEN. I see password is not set but I think it's to let user define it.

That is correct, since the install is interactive in this case, I'm letting users pick their own root password instead of having to change it post-install.

I addressed your comments and rebuilt the ISO and tested it in my lab and it works.
If you want to test it, its available on sourceforge

@nqb
Copy link
Contributor

nqb commented Feb 6, 2022

I tested ISO with success. I have one remaining comment: should we not disable predictable network names ?

It's the case in ZEN image but it's more to simplify provisioning. However, I'm thinking about cluster installation where you can have different network names and you will need to disable it anyways.

Option to add to preseed should be: 78f903e#diff-2e9669c2d68bf0daf463f91cf709f56da70b2ba792af71b0e5728f0f7ea7c670

@nqb
Copy link
Contributor

nqb commented Feb 6, 2022

We will need to update packetfence.org to mention new image and add a section in Installation guide.

@nqb
Copy link
Contributor

nqb commented Feb 6, 2022

Could you disable AppArmor (like in ZEN image) ? I think you just need to add apparmor=0 after d-i debian-installer/add-kernel-opts string

@julsemaan
Copy link
Collaborator Author

I noticed that the 'Graphical install' option ignores the preseed. I'm working on removing that option from the ISO too

@julsemaan
Copy link
Collaborator Author

I tested ISO with success. I have one remaining comment: should we not disable predictable network names ?

It's the case in ZEN image but it's more to simplify provisioning. However, I'm thinking about cluster installation where you can have different network names and you will need to disable it anyways.

Option to add to preseed should be: 78f903e#diff-2e9669c2d68bf0daf463f91cf709f56da70b2ba792af71b0e5728f0f7ea7c670

The downside with this is that all the network configuration you do during the installer is based on the 'non-predictable' interface name so when you boot into the OS, eth0 is down and not configured in /etc/network/interfaces.

@nqb
Copy link
Contributor

nqb commented Feb 7, 2022

This was the issue we had with ZEN image. In that case, we can:

  • keep things as is
  • pass options directly to the installer to start install with correct options

@julsemaan
Copy link
Collaborator Author

The installer accepts net.ifnames=0 and combined with it in the preseed kernel options we're all good. So the interfaces can be configured using the installer and will keep predictable names both in the installer and after the install

I retested an ISO and it works but haven't republished since I'd need to realter the .gitlab-ci file. I can provide an ISO to test if needed.

Once we're happy with this, I'll write the steps in our install guide to get this installed

@nqb
Copy link
Contributor

nqb commented Feb 14, 2022

Tested again, work as expected.
@julsemaan, I will let you adjust documentation.

@julsemaan
Copy link
Collaborator Author

Tested again, work as expected. @julsemaan, I will let you adjust documentation.

Just did the instructions, went pretty generic so that it survives over time

@extrafu, if you want to also check the instructions for verbiage and grammar

@extrafu
Copy link
Member

extrafu commented Feb 14, 2022

Minor nits mentioned

@julsemaan
Copy link
Collaborator Author

@nqb, all yours for the final review and merge

@nqb nqb merged commit ad5ecd1 into devel Feb 15, 2022
nqb added a commit that referenced this pull request Feb 15, 2022
@nqb nqb deleted the feature/debian-installer branch February 15, 2022 13:35
@nqb nqb mentioned this pull request Feb 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants