3076 Commits

Author SHA1 Message Date
Brendan Reilly
f05011580a Release 3.9.4 3.9.4 2025-04-29 13:00:59 -04:00
Brendan Reilly
abbbdae51c Merge #1787 Add authentication for product pages 2025-04-29 14:42:16 +00:00
Brendan Reilly
23f77986e2 Add authentication for product pages 2025-04-29 10:01:31 -04:00
Mike McLean
5a0c8b37e1 PR#1786: Nudge non-scratch builds stuck in done
Merges #1786
https://pagure.io/fm-orchestrator/pull-request/1786

Fixes: #1783
https://pagure.io/fm-orchestrator/issue/1783
nudge non-scratch builds stuck in done
2025-03-18 16:23:23 -04:00
Brendan Reilly
b175c827cf Nudge non-scratch builds stuck in done
Fixes #1783
2025-03-18 15:59:22 -04:00
Brendan Reilly
2f4aae2a88 Release 3.9.3 3.9.3 2025-01-23 11:11:46 -05:00
Mike McLean
83c82b3074 PR#1785: Retain base module suffix priority in MSE
Merges #1785
https://pagure.io/fm-orchestrator/pull-request/1785
2024-08-13 12:01:16 -04:00
Brendan Reilly
7dbe95fc56 Retain base module suffix priority in MSE 2024-08-13 11:05:25 -04:00
Brendan Reilly
04f0d4b0f2 Merge #1781 Update links in readme 2023-06-15 16:08:01 +00:00
Brendan Reilly
459e6cf8d3 Update links in readme
Fixes: #1774
2023-06-13 13:47:20 -04:00
Brendan Reilly
ee06645ce6 Release 3.9.2 3.9.2 2023-04-18 12:24:49 -04:00
Brendan Reilly
200373352b Handle help option in mbs-upgradedb 2023-04-18 12:22:11 -04:00
Brendan Reilly
969371018d Release 3.9.1 3.9.1 2023-04-18 11:41:49 -04:00
Brendan Reilly
4af8fbc157 Release 3.9.0 3.9.0 2023-04-18 11:11:22 -04:00
Brendan Reilly
e437ddf09c Merge #1684 Add a script to check the dist tarball, and use it to fix the dist tarball 2023-04-04 16:09:09 +00:00
Owen W. Taylor
ad4927fd01 Add a script to check the dist tarball, and use it to fix the dist tarball
* Add a script make-dist-tarball.py that runs 'setup.py sdist' and compares
  what gets distributed with git and with a set of patterns of extra files
  added during distribution, and with git files that we don't want to
  distribute.

* Extend MANIFEST.in or add __init__.py files to distribute:

   run-unittests.sh
   tox.in
   conf/client_secrets.json
   tests/test_builder
   tests/integration

* Don't include all of module_build_service - this is too prone to backup
  files and development trash files; instead add just the files we need
  that aren't *.py

* Move global-excludes to the end - they modify the existing list of files;
  and add *.db - for some reason, .mbs_local_build.db files were
  getting disted.
2023-04-04 16:07:10 +00:00
Brendan Reilly
7c11dbca4c Merge #1775 provide missing fields in api 2023-03-23 13:27:42 +00:00
Mike McLean
38c42c5156 use double quotes 2023-03-23 13:26:11 +00:00
Mike McLean
1870748249 provide missing fields in api 2023-03-23 13:26:11 +00:00
Brendan Reilly
180d347cd6 Merge #1773 Tweaks to tests for mock buids 2023-03-20 16:31:24 +00:00
Owen W. Taylor
113e806ae5 test_mock.py: fix NVR's in fake rpm -qf output
The rpm -qf call in KojiContentGenerator.__get_rpms has VERSION and
RELEASE separated by a space, not a -.
2023-03-20 16:30:52 +00:00
Owen W. Taylor
ba82e8b5a6 test_mock.py: refactor test case setup
To clean things up and facilitate future changes to test cases, split
the method for creating a builder apart from the fixture so that it can
be used independently.
2023-03-20 16:30:52 +00:00
Brendan Reilly
de1c1e2675 Merge #1763 Improve handling of output from createrepo and mock 2023-03-20 16:30:00 +00:00
Owen W. Taylor
e776a77048 Redirect createrepo_c output to the build logs
It's more useful to have the createrepo_c output in the build logs
than cluttering the build stdout.
2023-03-20 10:58:59 -04:00
Owen W. Taylor
cff90e587a builder/utils/execute_cmd: remove useless return value and add a test
Since we never pass in subprocess.PIPE for stdin/stdout/stderr,
subprocess.communicate() does nothing, and the return out/err tuple
was always empty.
2023-03-20 10:57:52 -04:00
Owen W. Taylor
728b96133d local builds: Don't call mock with -v
Verbose output from mock is not useful for someone trying to figure out
why their module build failed, and in fact makes it harder by adding
quite a bit of extraneous noise.
2023-03-20 10:55:28 -04:00
Owen W. Taylor
debfd8a5c5 Combine mock stderr and stdout logs
Mock doesn't normally log anything to stdout - so it's confusing to mention
separate logs in the messages. Combine the two output streams together.
(This is what koji does as well.)
2023-03-20 10:55:28 -04:00
Brendan Reilly
cd5cf28ce2 Merge #1772 Make Mock buildroot caching more effective 2023-03-17 18:56:07 +00:00
Owen W. Taylor
48c4c75d73 MockModuleBuilder: Share root cache between threads
The different build threads all are using the same basic build root
contents, so there's no reason to use separate caches - point the
root cache plugin for mock to a single location. (There's locking
inside Mock for updating the root cache.)
2023-03-17 18:55:29 +00:00
Owen W. Taylor
f09d7cfe7f MockModuleBuilder: manage timestamps on mock config files
The mod time for the mock configuration file is used to determine
whether the root cache is out-of-date or not, so we want to avoid
changing the configuration timestamps when we don't change content
when we're just writing a per-thread mock configuration file again
with no substantive changes.

We do this by only updating the master mock.cfg file when we're
actually adding content, and propagating its mod time to the
per-thread configuration files.
2023-03-17 18:55:29 +00:00
Owen W. Taylor
d74eeb3941 MockModuleBuilder: Don't rewrite mock config to add SCM options
When we want to pass in SCM options particular to a specific module build,
do that on the mock command line rather than by modifying mock.cfg - this
avoids invalidating the root cache.
2023-03-17 18:55:29 +00:00
Brendan Reilly
d7e58e095f Merge #1771 Small fixes for MockModuleBuilder 2023-03-16 13:19:49 +00:00
Owen W. Taylor
433ddce11c MockModuleBuild: Avoid accumulating blank lines around yum.conf
Every time we read-and-rewrote mock.cfg, we'd add another set of
blank lines around the yum configuration.
2023-03-16 13:19:03 +00:00
Owen W. Taylor
0a8160a91c MockModuleBuilder: add missing kwarg to tag_artifacts 2023-03-16 13:19:03 +00:00
Owen W. Taylor
9c1f0edd0e MockModuleBuilder: fix a typo in a comment 2023-03-16 13:19:03 +00:00
Owen W. Taylor
14597fb1a7 MockModuleBuilder: don't accidentally remove log files from other threads
The _purge_useless_log_files() method, if run at the wrong time, would
remove log files that other threads were still creating.
2023-03-16 13:19:03 +00:00
Brendan Reilly
710e610850 Merge #1770 Pass koji_tag to get_built_rpms_in_module_build() 2023-03-15 17:54:28 +00:00
Owen W. Taylor
35086174ba Pass koji_tag to get_built_rpms_in_module_build()
For local builds, required modules are not necessarily in the local
database, so the method of looking up the build to find the koji tag
doesn't work reliably. However, the caller has the koji_tag - so just
pass it in.
2023-03-15 17:53:38 +00:00
Brendan Reilly
e974aca48e Merge #1765 Add a framework for special console handling of messages 2023-03-15 17:16:56 +00:00
Owen W. Taylor
646b0590ee MBSConsoleHandler: show status of ongoing repository downloads
When downloading files from Koji to make a local repository, display
a temporary status of which files are being displayed to the console
appended after any log messages. Updates are done by erasing the status
that was written, adding a log message, then writing the status again.
2023-03-15 17:16:24 +00:00
Owen W. Taylor
f5100609aa Filter console output through a special handler
When running in local mode, add a special handler that filters log
messages to the console to produce attractive output. Implemented
behaviors include:

 - INFO level messages are only displayed if done through
   MBSLogger.console() rather than MBSLogger.info().
 - Timestamps and thread names are omitted unless the local build
   is started with the -d option
 - Warning/error messages have the level highlighted in red
 - Special handling can be added to log messages, initially:
    - Long running operations can be displayed to the console as
      "Doing foo ... <pause>done"
2023-03-15 17:16:24 +00:00
Brendan Reilly
ae004e86a0 Merge #1766 batches.py: Fix handling of "changed-and-after" 2023-03-07 21:10:16 +00:00
Owen W. Taylor
4f3c60c808 batches.py: Fix handling of "changed-and-after"
all_reused_in_prev_batch should only check components in the previous
batch, not components in all batches including future batches. This
was accidentally regressed by some code refactoring in c36bd7ebac.
2023-03-07 21:08:55 +00:00
Brendan Reilly
a518bee114 Merge #1764 local builds: improve handling of build.log 2023-03-07 18:36:43 +00:00
Owen W. Taylor
a276a33969 LocalBuildConfiguration: log to <build_dir>/build.log not <build_dir>/build-2.log
Since the build log is already within the a build-specific directory, we
don't need to put the build ID (which ends up always being "2") into the
build log filename.
2023-03-07 18:33:30 +00:00
Owen W. Taylor
1c8e2a07d8 Local builds: buffer up initial logs and replay to the module build file
Logging during a build that occurs before the build directory is created
used to be logged to the console, but not retained in the build log
file. This made referring to the build log file confusing. Solve this
by buffering logs in memory until the log file is created and replaying
them.

A little bit of hackery is needed to avoid saving dangling references to
libsolv objects.
2023-03-07 18:33:30 +00:00
Brendan Reilly
295847e672 Merge #1780 Allow krb ccache to be configured 2023-02-27 17:59:35 +00:00
jmicanek
8709c632b0 Allow krb ccache to be configured
Access to the kernel keyring may be restricted in containers. Allow users to specify non keyring ccache for kerberos.
2023-02-27 18:35:53 +01:00
Brendan Reilly
f58e07df2a Merge #1778 switch to using gssapi_login for koji 2023-02-22 15:41:26 +00:00
Mike McLean
f6dcf6c346 switch to using gssapi_login for koji
Fixes https://pagure.io/fm-orchestrator/issue/1777

koji recently dropped this old call
https://pagure.io/koji/pull-request/3599

Previously, koji was ignoring the ctx arg and wrapping gssapi_login,
so this change is completely equivalent to the old behavior.
2023-02-22 10:22:53 -05:00