Jeffrey Townsend e3c67d6001 Package Build Fixes
- Fix the OnlPackageRepo lock.
  The lock for the package repo has always been broken for some requests due to the nested nature of some of the calls.
  This would cause the repo lock to be release prematurely in the middle of operations.
  This becomes obvious once large parallel package builds are enabled.

  The OnlPackageRepo class has been renamed to OnlPackageRepoLocked() and all locking has been removed.
  All operations performed by the OnlPackageRepoLocked() class are now assumed to be non-concurrent.

  The OnlPackageRepo class is now a wrapper around the OnlPackageRepoLocked class with acquires the lock
  prior to requesting any operations. This change is transparent to the callers but ensures
  that no nested locks (and premature unlocks) are performed.

- Improve the parallel makefile generation.
  - Set pipefail to that targets fail even with the log tee.
  - Allow packages with broken dependencies to set their stage explicitly.
  - Parallel package builds require that the package cache be treated as read-only.
  - Packages must specify their package prerequisites properly in their PKG file.
    - In order to detect and correct this situation packages will no longer
      be implicitly built as part of calls to onlpm find and link operations.
      We may be able to relax this restriction once the build is tight.

- Package Cache Corruption
  - If the package cache is corrupt (usually due to an aborted operation) then it we will
    automatically rebuild it instead of just whining about it.
2019-05-27 19:22:14 +00:00
2019-05-01 17:59:03 +00:00
2018-06-14 10:47:25 +02:00
2018-12-28 15:42:06 +00:00
2019-05-27 19:22:14 +00:00
2016-02-12 18:49:46 -08:00
2016-05-02 14:00:13 -07:00
2015-12-15 18:37:40 -08:00
2016-04-28 17:03:51 -07:00

Open Network Linux

Check out the main/offical website at http://opennetlinux.org .

Open Network Linux (ONL) is a Linux distribution for bare metal switches. ONL builds an ONIE-compatible installer and a switch image which contains a complete Debian distribution with added drivers and configuration for running on bare metal switches.

Software License

Licenses for the software are described under the LICENSE file. Download or use of the software implies consent.

Documentation

Please see the docs directory for additional information.

![alt text] (https://scan.coverity.com/projects/8655/badge.svg "Coverity Scan Build Status")

Description
No description provided
Readme EPL-1.0 98 MiB
Languages
C 92.6%
Python 4.5%
Makefile 2.1%
Shell 0.7%
Dockerfile 0.1%