linux_dev - OpenNebula/one-apps GitHub Wiki
Developer Information
Repository Structure
All code is located under context-linux/src/. Here the directory structure follows the installation directory structure:
├── etc
│   ├── cron.d
│   ├── devd
│   ├── init
│   ├── init.d
│   ├── modules-load.d
│   ├── NetworkManager
│   ├── one-context.d
│   ├── periodic
│   ├── rc.d
│   ├── systemd
│   └── udev
├── lib
│   └── udev
└── usr
    ├── bin
    ├── lib
    ├── local
    └── sbin
Filenames may contain one or more tags. Tags are appended to the filename name after two hashes (##), e.g. script##systemd. The tags on the filename select the file for use in different environments or targets. If more than one tag is present, they are separated by dots, e.g. script##systemd.rpm.
Examples:
script- non-tagged file for all targetsscript##systemd- file tagged with systemdscript##systemd.rpm- file tagged with systemd and rpm
Contextualization Scripts
Contextualization scripts are executed on every boot and during reconfiguration. They are located in context-linux/src/etc/one-context.d/. Scripts are divided into two classes:
- Local scripts, run before networking, prefixed with 
loc- - Post-networking scripts, prefixed with 
net- 
All other scripts not prefixed with loc- or net- are executed first during the post-networking contextualization stage.