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

TOOLS-2579 Update eng.git for 24.4.1 #70

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 13 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,19 @@

<!--
Copyright 2019 Joyent, Inc.
Copyright 2025 MNX Cloud, Inc.
-->

# eng: Joyent Engineering Guide
# eng: Triton Engineering Guide

This repo serves two purposes: (1) It defines the guidelines and best
practices for Joyent engineering work (this is the primary goal), and (2) it
practices for Triton engineering work (this is the primary goal), and (2) it
also provides boilerplate for a Triton (formerly known as SDC) project repo,
giving you a starting point for many of the suggestion practices defined in
the guidelines. This is especially true for node.js-based REST API projects.

**You probably want to be looking at the
[actual Joyent engineering guide at docs/index.md](docs/index.md).**
[actual Triton engineering guide at docs/index.md](docs/index.md).**
This README.md is a template for repos to use.

**If you have cloned this repo to start a new project**
Expand All @@ -27,16 +28,16 @@ as the first paragraph of the introduction of your repo:

- For Triton-related repos:
```
This repository is part of the Joyent Triton project. See the [contribution
guidelines](https://github.com/joyent/triton/blob/master/CONTRIBUTING.md)
This repository is part of the Triton DataCenter project. See the [contribution
guidelines](https://github.com/TritonDataCenter/triton/blob/master/CONTRIBUTING.md)
and general documentation at the main
[Triton project](https://github.com/joyent/triton) page.
[Triton project](https://github.com/TritonDataCenter/triton) page.
```
- For Manta-related repos:
```
This repository is part of the Joyent Manta project. For contribution
This repository is part of the Manta project. For contribution
guidelines, issues, and general documentation, visit the main
[Manta](http://github.com/joyent/manta) project page.
[Manta](http://github.com/TritonDataCenter/manta) project page.
```
After the boilerplate paragraph, write a brief description about your repo.

Expand All @@ -45,9 +46,9 @@ After the boilerplate paragraph, write a brief description about your repo.

To ensure maximum compatibility, release builds are performed on a build zone
that is old enough to allow new and updated components to run on all supported
platform images. If you are not using the Joyent Jenkins instance for
platform images. If you are not using the Triton Jenkins instance for
performing builds, you should build using an appropriate build zone. See
[Build Zone Setup for Manta and Triton](https://github.com/joyent/triton/blob/master/docs/developer-guide/build-zone-setup.md).
[Build Zone Setup for Manta and Triton](https://github.com/TritonDataCenter/triton/blob/master/docs/developer-guide/build-zone-setup.md).

Describe steps necessary for development here.

Expand All @@ -63,7 +64,7 @@ Describe steps necessary for testing here.

## Documentation

[Joyent Engineering Guide is at docs/index.md](docs/index.md).
[Triton Engineering Guide is at docs/index.md](docs/index.md).

To update the guidelines, edit "docs/index.md" and run `make docs`
to update "docs/index.html". Works on either SmartOS or Mac OS X.
Expand All @@ -85,6 +86,6 @@ development data.

## License

"eng: Joyent Engineering Guide" is licensed under the
"eng: Triton Engineering Guide" is licensed under the
[Mozilla Public License version 2.0](http://mozilla.org/MPL/2.0/).
See the file LICENSE.
20 changes: 10 additions & 10 deletions docs/hybridimages.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ apisections:

<!--
Copyright 2020 Joyent, Inc.
Copyright 2022 MNX Cloud, Inc.
Copyright 2025 MNX Cloud, Inc.
-->

# Joyent Hybrid Images
# Triton Hybrid Images

This document describes the best practices for HVM image creation such that they
are compatible with the QEMU/KVM and bhyve hypervisors on SmartOS.
Expand All @@ -27,10 +27,10 @@ The key characteristics of a hybrid image are:
locations in the device tree, perhaps with different model identifiers, serial
numbers. etc.
- Must configure networking using the [mdata
protocol](https://eng.joyent.com/mdata/protocol.html) on the second serial
protocol](https://eng.tritondatacenter.com/mdata/protocol.html) on the second serial
port (`ttyS1`, `ttyb`, `COM2`, etc.).
- Should take other actions as described in the [data
dictionary](https://eng.joyent.com/mdata/datadict.html).
dictionary](https://eng.tritondatacenter.com/mdata/datadict.html).
- Should have an administrative port on the first serial port (`ttyS0`, `ttya`,
`COM1`, etc.).
- Should use virtio block and network devices.
Expand All @@ -57,7 +57,7 @@ The typical hybrid image creation process involves the following steps.
installation. This sanity check likely involves looking for well-known
markers in the log output described above.
6. Generate an image, which is comprised of a zfs stream and a
[manifest](https://github.com/joyent/sdc-imgapi/blob/master/docs/index.md#image-manifests).
[manifest](https://github.com/TritonDataCenter/sdc-imgapi/blob/master/docs/index.md#image-manifests).
7. Optionally upload to Manta and/or https://updates.tritondatacenter.com.

The steps described above are generally handled with automation. Steps 1, 2,
Expand Down Expand Up @@ -125,16 +125,16 @@ vmadm start $uuid

The following repositories follow the patterns described above.

* [mi-centos-hvm](https://github.com/joyent/mi-centos-hvm) for CentOS 6 - 8
* [mi-debian-hvm](https://github.com/joyent/mi-debian-hvm) for Debian 8 - 10
* [mi-centos-hvm](https://github.com/TritonDataCenter/mi-centos-hvm) for CentOS 6 - 8
* [mi-debian-hvm](https://github.com/TritonDataCenter/mi-debian-hvm) for Debian 8 - 10

Each repo is intended to handle a family of distributions. The mi-centos-hvm
repo probably implements the hard parts required for RHEL, Fedora, and other
RHEL-derived distributions. Likewise, it should be straight-forward to add
support for Ubuntu to mi-debian-hvm.

Each of those repositories has this ([eng](https://github.com/joyent/eng)) and
[sdc-vmtools](https://github.com/joyent/sdc-vmtools) as subrepos. The eng repo
Each of those repositories has this ([eng](https://github.com/TritonDataCenter/eng)) and
[sdc-vmtools](https://github.com/TritonDataCenter/sdc-vmtools) as subrepos. The eng repo
is home to common tools used for building the images and the sdc-vmtools repo
is used for things that are added to the image.

Expand Down Expand Up @@ -235,7 +235,7 @@ have specialized control over the boot loader, etc., additional arguments can be
specified on the command line.

A key example of how this is used is in the [CentOS
images](https://github.com/joyent/mi-centos-hvm/blob/master/create-image).Rather
images](https://github.com/TritonDataCenter/mi-centos-hvm/blob/master/create-image).Rather
than remastering the image to add the appropriate boot options, the installation
media is mounted in the host and QEMU is started with options that specify the
kernel, initrd, kernel command line, and a secondary CD which contains the
Expand Down
Loading