Comment 1 for bug 2033632

Revision history for this message
Jacopo Rota (r00ta) wrote :

The root cause is at src/maasserver/api/machines.py.

In particular

```
        Form = get_machine_edit_form(request.user)
        form = Form(instance=machine, data={})
        if series is not None:
            form.set_distro_series(series=series)
        if license_key is not None:
            form.set_license_key(license_key=license_key)
        if hwe_kernel is not None:
            form.set_hwe_kernel(hwe_kernel=hwe_kernel)
        if options.install_rackd:
            form.set_install_rackd(install_rackd=options.install_rackd)
        if options.ephemeral_deploy:
            form.set_ephemeral_deploy(
                ephemeral_deploy=options.ephemeral_deploy
            )
        if options.enable_hw_sync:
            form.set_enable_hw_sync(enable_hw_sync=options.enable_hw_sync)
        if form.is_valid():
            form.save()
```
is wrong because in case the new deployment has these options set to False, they are not stored and the previous ones are used