Commit graph

175 commits

Author SHA1 Message Date
Michael L. Young
ed688790eb
Add support for encrypted private key
This PR adds support for prompting the user for their SSH key password if they
are using an encrypted private key.

Testing was performed locally.

Signed-off-by: Michael L. Young <myoung@ciq.com>

resolves rocky-linux/srpmproc#28
2024-12-05 11:50:07 -05:00
cd9ebd17b9
Merge pull request #27 from rocky-linux/update/dependencies 2024-07-16 23:00:15 +02:00
Louis Abel
95737b369b
update deps 2024-07-16 11:46:11 -07:00
Jonathan Maple
43e56cc58a
Fixingup error returns for directives (#26)
The processing of pkg/directives/patch.go will return an error type but
handeling of it was attempting to use JSON encoding to print to screen.
There is no reason to use that since the `error` type only has a string
in it but doesn't get marshalled properly to json due to the private
variables.
This is also the only time json marshaling is used so instead covert the
error handling to just `fmt.Printf`.
2024-07-12 14:04:42 -04:00
Louis
c0794a01b1
Merge pull request #25 from rocky-linux/fix/deprecated_patch_format
Change patch directive to maximum compatible form
2024-06-24 13:22:03 -07:00
Louis Abel
ced0546d71
Change patch directive to maximum compatible form
The `%patchN` method of performing patches in `%prep` has long been
deprecated and should no longer be used. The form of `%patch -PN` is
preferred for maximum compatibility between all current and upcoming
EL releases.
2024-06-24 00:14:23 -07:00
eba46f0fc7
chore: build for riscv64 2024-06-13 17:04:33 -04:00
Louis Abel
7a3d1891cd
remove {{ end }} 2024-06-10 22:33:28 -07:00
Louis Abel
9535324647
update workflow according to docs 2024-06-10 22:20:11 -07:00
Louis Abel
79611329c4
use --clean instead of --rm-dist 2024-06-10 21:55:16 -07:00
Louis Abel
e69d753d03
bump workflow to 1.21 2024-06-10 21:24:24 -07:00
Louis
2127416018
Merge pull request #24 from nazunalika/fix-plus-and-return
Draft: Update deps, bump to golang 1.21, fix logic, add ability to set source git repo name
2024-06-10 21:18:50 -07:00
Louis Abel
3d247ffb49
update deps further 2024-06-10 19:54:16 -07:00
Louis Abel
d01c8083f4
fix weirdness with el8 2024-06-10 17:48:31 -07:00
Louis Abel
ab57fbe33b
Ensure json is returned even when there's no changes 2024-06-10 16:12:51 -07:00
Louis Abel
7c1d85b963
bump to golang 1.21 2024-06-10 14:02:55 -07:00
Louis Abel
66ee4b488c
Update srpmproc dependencies 2024-06-10 12:54:58 -07:00
Louis Abel
04bd3b64a6
remove deprecated ioutil functions 2024-06-10 08:31:26 -07:00
Louis Abel
18f9f5c77c
Add git name option for source-rpm
Adds the ability to set a source git repo name for the package that will
be imported.
2024-06-09 21:40:53 -07:00
f2864a875a
Merge pull request #16 from dirkmueller/openela
Support the openELA "PATCHES" directory format as well
2023-11-16 18:04:50 +01:00
Dirk Müller
82271f5d9e
Support the openELA "PATCHES" directory format as well 2023-11-06 16:53:43 +01:00
963b5d25dd
Fix goreleaser archive name template 2023-10-06 08:13:19 +02:00
a5f9082c15
Be compatible with latest goreleaser 2023-10-06 08:05:29 +02:00
f2374845e3
Merge pull request #15 from nazunalika/main 2023-10-06 07:56:14 +02:00
Louis Abel
162e7cea34
continue as it's a loop 2023-09-19 17:16:08 -07:00
Louis Abel
edeb0239df
Add two features and one fix
This commit attempts to merge in custom changes on distrobuild. In
particular:

* Imports
  * Package: If there are no changes, do not import. This currently
    returns as an error, so may need adjusting.
  * Module: Import, regardless if there is changes or not. MBS cares
    more about the fact there's a commit associated with a module build.
    It will not build off the same commit ID.
  * Add --module-branch-names-only flag to make it so module yamls will
    have a branch name rather than commit ID. This makes it easier to
    work with MBS.
* Fixes
  * tagless imports should use the _topdir macro, otherwise a bug may
    surface where macros or other data cannot be determined, and a
    cryptic error may display.
2023-09-05 03:50:43 -07:00
40180a342b
Merge pull request #11 from skip77/manual-commits-fix
Manual commits fix
2023-03-12 03:06:01 +01:00
skip77
7f14563f93
Merge branch 'rocky-linux:main' into manual-commits-fix 2023-03-11 17:38:18 -05:00
6e2ed2eb23
Merge pull request #8 from skip77/main 2023-03-11 23:26:54 +01:00
Skip Grube
44725a727d
Repaired manual commits feature and added some bugfixes:
- Manual commits work properly again, and are passed to "tagless mode" for version discovery + tagging
- Fixed tagless mode issue with rpmspec warnings, only stdout is considered
- Fixed tagless mode issue where renamed folders were not properly overwritten, causing potential bad commits

-Skip G.
2023-03-05 22:04:20 -05:00
Skip Grube
4f975913b4
Removed old commented line
-Skip
2023-02-28 16:23:51 -05:00
Skip Grube
3371826851
Fixed up formatting issues from rpmspec commit
-Skip G.
2023-02-28 15:25:11 -05:00
skip77
f4f2a0a9e4
Merge branch 'rocky-linux:main' into main 2023-02-27 16:32:24 -05:00
skip77
5e8ed2e521
Fix Default cdn behavior (#9)
- CDN returned as-is for processing if no template indicators are found

-Skip G.
2023-02-27 15:26:21 -05:00
Skip Grube
2eb0768f33
Switched to using rpmspec for version determination in tagless mode:
- Greatly simplified getVersionFromSpec function due to rpmspec usage
- Function now returns error info in case rpmspec shell command goes wrong

-Skip Grube
2023-02-26 22:59:24 -05:00
2c6d6f0b0a
Merge pull request #7 from skip77/main 2023-02-24 02:16:54 +01:00
Skip Grube
0ea6123b6e
More cleanup from feedback
- Removed extra lines
- Externalized Lookaside struct{}

-Skip Grube
2023-02-23 13:57:21 -05:00
Skip Grube
2cc3bcc3a3
Updated cdn-related commits for style and cleanup
-Skip Grube
2023-02-23 12:31:31 -05:00
Skip Grube
3237794071
Updates to add flexibility to lookasides and tagless handling:
- Added template "macros" to allow for complex --cdn-url specifications ( {{.Name}}, {{.Branch}}, etc.)
- Added --cdn <distro> option with pre-set URL patterns to simplify use
- Kept default fallback behavior and search patterns of --cdn-url if templates are not used
- Removed "--altlookaside" option, as the above features make it redundant

- Automatic tagless:  If a proper git version/imports tag isn't found, a "tagless-mode" import will be attempted automatically at run-time
- taglessmode command line option kept in case user still wants to force a tagless import

-Skip Grube
2023-02-22 23:23:47 -05:00
06ffd1e507
Support ~ and % in Release 2022-11-15 15:14:59 +01:00
29778c7ea2
Proper NVR matching 2022-11-06 04:54:35 +01:00
2a2b10ba10
Formatting 2022-11-06 04:53:02 +01:00
e859f54e5e
Supported Go version is now 1.18 2022-11-03 04:39:57 +01:00
f3ac46447d
Stop converting v3 to v2 2022-11-03 04:36:25 +01:00
skip77
cff0cc0fbf
feature: "tagless import" feature mode (#4)
In order to build from lookahead sources, srpmproc must support the new gitlab address for centos 9 stream as well as manipulating the sources to expected format.

Resolves #2.


- Options for tagless import and new stream lookaside format added
- Git Mode now supports scanning for branch head in addition to the "normal" pulling of specific version tags
- Alternate ProcessRPM added for Tagless mode in process.go (still a WIP)
- Tagless mode converts a repo to the "traditional" format (SPECS/ + SOURCES/ + <pkg>.metadata )
- Tagless mode will build a dummy srpm to determine NVR information (rpmbuild + rpm shell commands) (will use this to tag imports in the target git)
- Limitation:  Tagless imports only pull the latest head from a branch
- CentOS-Stream import branches are converted from stream-<MODULE_VERSION>-<RHEL_VERSION> to the more familiar r9s-stream-<VERSION>
- stream-style YAML is detected and converted for modules, similar to the older modulemd.src.txt files
- This new pattern is for "tagless mode" only, previous tagged imports (from git.centos.org) should not be affected
2022-09-27 23:32:50 -04:00
9b44bc6e50
Merge pull request #5 from jarod-w/main 2022-09-12 21:13:13 +02:00
jarod.w
d7ed1c7a7f Fix the issue that nothing is ever written to tmpfs location when the
tmpfs is absolute path.

The test case of absolute path is below:
[root@rockylinux86 ~]# srpmproc --version 8 --upstream-prefix file:///root/rocky --storage-addr file:///tmp/srpmproc-cache --source-rpm sed --tmpfs-mode /root/rocky/rpms/sed
[root@rockylinux86 ~]# ls /root/rocky/rpms/sed/
r8  r8-beta  r8s

The test case of relative path is below:
[root@rockylinux86 ~]# pwd
/root
[root@rockylinux86 ~]# srpmproc --version 8 --upstream-prefix file:///root/rocky --storage-addr file:///tmp/srpmproc-cache --source-rpm sed --tmpfs-mode ./rocky/rpms/sed
[root@rockylinux86 ~]# ls /root/rocky/rpms/sed/
r8  r8-beta  r8s

Signed-off-by: jarod.w <wl.jarod@gmail.com>
2022-09-11 17:52:36 +08:00
Neil Hanlon
1c2091a489
Merge pull request #3 from NeilHanlon/main
Add s390x and ppc64le to builds
2022-06-03 13:57:11 -04:00
Neil Hanlon
aacedb189f
Add s390x and ppc64le to builds 2022-06-03 13:56:05 -04:00
6df2fe1e3f Fix NVR regex 2022-05-10 16:32:31 +02:00