readme: add instructions for a manual update
The readme now includes instructions for using the provided serve-package to apply a manual update.
This commit is contained in:
parent
af61458371
commit
9c437f5a81
1 changed files with 47 additions and 0 deletions
47
README.md
47
README.md
|
@ -23,3 +23,50 @@ These differences include:
|
|||
As much as possible the code includes comments about these extensions.
|
||||
|
||||
- Many data fields not used by CoreUpdate are omitted.
|
||||
|
||||
## `serve-package`
|
||||
|
||||
This project includes a very simple program designed to serve a single Container Linux package on the local host. It is intended to be used as a manual updater for a machine that is not able to use a full-fledged CoreUpdate instance. Binaries are available for each released version on the [releases page](https://github.com/coreos/go-omaha/releases). `serve-package` can also be built from source using the provided Makefile:
|
||||
|
||||
```bash
|
||||
make
|
||||
```
|
||||
|
||||
The binary will be available in the `bin/` folder.
|
||||
|
||||
It is recommended that the server be run directly on the machine you intend to update. Go to the [Container Linux release notes](https://coreos.com/releases/) and find the version number for the release you would like to update to. The update payload can be retrieved from
|
||||
|
||||
```
|
||||
https://update.release.core-os.net/amd64-usr/<version>/update.gz
|
||||
```
|
||||
|
||||
where `<version>` is the version number you retrieved from the releases page. For example, `https://update.release.core-os.net/amd64-usr/1576.4.0/update.gz` is the payload required to update to Container Linux version 1576.4.0.
|
||||
|
||||
Copy the update payload and the `serve-package` binary to the server you would like to update. `serve-package` can be run as follows:
|
||||
|
||||
```bash
|
||||
./serve-package --package-file update.gz --package-version <version>
|
||||
```
|
||||
|
||||
By default, the server listens on `localhost:8000`. This can be modified using the `--listen-address` option.
|
||||
|
||||
Next, `update_engine` needs to be configured to use the local server that was just set up:
|
||||
|
||||
```bash
|
||||
echo "SERVER=http://localhost:8000/v1/update" | sudo tee -a /etc/coreos/update.conf
|
||||
```
|
||||
|
||||
Restart `update_engine` and tell it to check for an update:
|
||||
|
||||
```bash
|
||||
sudo systemctl restart update-engine.service
|
||||
update_engine_client -check_for_update
|
||||
```
|
||||
|
||||
If `locksmithd.service` is running, the machine will restart once it has updated to the latest version. Otherwise, watch the logs from `update-engine.service` to determine when the update is complete and the machine is ready to restart:
|
||||
|
||||
```bash
|
||||
journalctl -u update-engine.service -f
|
||||
# wait for a line that says "Update successfully applied, waiting for reboot"
|
||||
sudo systemctl reboot
|
||||
```
|
||||
|
|
Loading…
Reference in a new issue