A project is the unit everything in CEagle hangs off. It owns:
- an id, which is the address it publishes at;
- a name and a one-line description, both of which you can change;
- a language, chosen once;
- a status, active or archived;
- an owner, the CEagle account that created it.
Everything else is a product added to the project.
Products#
The build source. Exactly one, because a project publishes one program at the project's address.
OAuth applications registered against CEagle accounts and scoped to this project.
The two are independent. A project can have credentials and no Flight source, a Flight source and no credentials, or both. Creating, renaming and archiving a project is not part of any product and always works.
One project, one program#
A Flight source publishes one program, at the project's address. If you have two programs, you have two projects.
That is a deliberate constraint rather than a limitation of the implementation. The address, the listing, the dependency graph and the download routes are all keyed on the project, and a project that published several programs would need a second identifier in every one of those places.
What a project shows you#
The project page lists what is inside it: how many OAuth applications are registered, and whether a Flight source is connected. A product that is switched off is neither counted nor shown.
What happens to all of it when a project is archived.
What you cannot do#
- Change the id. It is the published address.
- Change the language once set. Everything downstream depends on it.
- Delete anything. See archiving.
- Have two Flight sources. One project publishes one program.