Giter Club home page Giter Club logo

devtools's People

Contributors

gmkurtzer avatar nazunalika avatar neilhanlon avatar rlhennig avatar skip77 avatar tjyang avatar wsoyinka avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

devtools's Issues

rockybuild javapackages-tools:201902

  • from Readme.md, only javapackages-tools:201801 was built. Looks like an exercise left as homework ;)
  • create /etc/mock/rocky.x86_64/modules/javapackages-tools:201902.cfg
[me@centos8t01 modules]$ pwd
/etc/mock/rocky.x86_64/modules
[me@centos8t01 modules]$ cp javapackages-tools:201801.cfg javapackages-tools:201902.cfg
[me@centos8t01 modules]$ perl -pi -e 's!201801!201902!' javapackages-tools:201902.cfg
[me@centos8t01 modules]$ diff -ru javapackages-tools:201801.cfg javapackages-tools:201902.cfg
--- javapackages-tools:201801.cfg       2021-04-11 19:14:31.433162184 -0400
+++ javapackages-tools:201902.cfg       2021-04-11 20:37:29.629844295 -0400
@@ -36,7 +36,7 @@
 """

 config_opts['module_setup_commands'] = [
-    ('enable', 'javapackages-tools:201801'),
+    ('enable', 'javapackages-tools:201902'),
 ]

[me@centos8t01 modules]$
  • build 201801 first then 201901, otherwise javapackages-tools:201902 one will failed.
[me@centos8t01 r8-stream-201902]$ rockybuild javapackages-tools:201902
<snipped>
Wrote: /builddir/build/RPMS/apache-ivy-2.5.0~rc1-2.el8_3.noarch.rpm
Wrote: /builddir/build/RPMS/apache-ivy-javadoc-2.5.0~rc1-2.el8_3.noarch.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.NdGwha
+ umask 022
+ cd /builddir/build/BUILD
+ cd apache-ivy-2.5.0-rc1
+ /usr/bin/rm -rf /builddir/build/BUILDROOT/apache-ivy-2.5.0~rc1-2.el8_3.x86_64
+ exit 0
Finish: rpmbuild apache-ivy-2.5.0~rc1-2.el8.src.rpm
Finish: build phase for apache-ivy-2.5.0~rc1-2.el8.src.rpm
INFO: Done(SRPMS/apache-ivy-2.5.0~rc1-2.el8.src.rpm) Config(javapackages-tools:201902) 1 minutes 9 seconds
INFO: Results and/or logs in: /home/me/rocky/apache-ivy/r8-stream-201902
INFO: Cleaning up build root ('cleanup_on_success=True')
Start: clean chroot
Finish: clean chroot
Finish: run
+ cp apache-ivy-2.5.0~rc1-2.el8_3.noarch.rpm apache-ivy-2.5.0~rc1-2.el8_3.src.rpm apache-ivy-javadoc-2.5.0~rc1-2.el8_3.noarch.rpm SRPMS/apache-ivy-2.5.0~rc1-2.el8.src.rpm /usr/share/nginx/html/repo/
+ createrepo /usr/share/nginx/html/repo
Directory walk started
Directory walk done - 218 packages
Temporary output repo path: /usr/share/nginx/html/repo/.repodata/
Preparing sqlite DBs
Pool started (with 5 workers)
Pool finished
[me@centos8t01 r8-stream-201902]$
[me@centos8t01 rocky]$ ls -lrt /usr/share/nginx/html/repo/|grep java
-rw-r--r-- 1 me me   641412 Apr 11 20:47 apache-ivy-javadoc-2.4.0-14.el8_3.noarch.rpm
-rw-r--r-- 1 me me   665504 Apr 11 20:49 apache-ivy-javadoc-2.5.0~rc1-2.el8_3.noarch.rpm
[me@centos8t01 rocky]$

  • Question, not sure why 201801 has to build first.

RFE: Using sed instead of curl as example in README.md

@gmkurtzer

Not sure if there is other rpm make time shorter than sed.

  • sed take two minutes while curl took 26 minutes.
[me@centos8t01 devtools]$  time make build sed
<snipped>
+ exit 0
Finish: rpmbuild sed-4.5-2.el8.src.rpm
Finish: build phase for sed-4.5-2.el8.src.rpm
INFO: Done(/home/me/rocky/rpms/sed/r8/SRPMS/sed-4.5-2.el8.src.rpm) Config(baseos) 2 minutes 5 seconds
INFO: Results and/or logs in: /home/me/rocky/builds/sed/r8
INFO: Cleaning up build root ('cleanup_on_success=True')
<snipped>
Pool started (with 5 workers)
Pool finished

real    2m13.505s
user    1m9.002s
sys     0m27.331s
[me@centos8t01 devtools]$time make build curl

<snipped>
Finish: rpmbuild curl-7.61.1-14.el8.1.src.rpm
Finish: build phase for curl-7.61.1-14.el8.1.src.rpm
INFO: Done(/home/me/rocky/rpms/curl/r8/SRPMS/curl-7.61.1-14.el8.1.src.rpm) Config(baseos) 26 minutes 5 seconds
INFO: Results and/or logs in: /home/me/rocky/builds/curl/r8
INFO: Cleaning up build root ('cleanup_on_success=True')
<snipped>
Pool finished

real    26m15.985s
user    20m34.508s
sys     2m0.709s
[me@centos8t01 devtools]$

'go get' is no longer supported outside a module

Following these instructions, when I run make I get this error:

[trecker@localhost ~]$ cd devtools-main/
[trecker@localhost devtools-main]$ make
go get gopkg.in/yaml.v2
go: go.mod file not found in current directory or any parent directory.
'go get' is no longer supported outside a module.
To build and install a command, use 'go install' with a version,
like 'go install example.com/cmd@latest'
For more information, see https://golang.org/doc/go-get-install-deprecation
or run 'go help get' or 'go help install'.
make: *** [Makefile:18: .go-setup] Error 1

Failed to install devtools on Rocky Linux 9

I follow instructions to install devtools on Rocky Linux 9 but get the following error message:

$ sudo make install
sudo dnf config-manager --set-enabled powertools
Error: No matching repo to modify: powertools.
make: *** [Makefile:12: .system] Error 1

I'm newbie of RL .

No such file or directory: 'javapackages-tools:201801'

  • install
git pull
make 
sudo make install

  • Test for pull#3.
$ rockyget apache-ivy
$ cd apache-ivy/r8-stream-201801
$ rockybuild javapackages-tools:201801
  • rockyget
[me@centos8t01 ~]$ cat /usr/local/bin/rockyget

[me@centos8t01 ~]$ cat /usr/local/bin/rockyget
#!/bin/sh

set -xe

mkdir /tmp/srpmproc-cache 2>/dev/null ||:

srpmproc --version 8 --source-rpm "$1" --upstream-prefix https://git.rockylinux.org/staging --storage-addr file:///tmp/srpmproc-cache --tmpfs-mode "$1"

[me@centos8t01 ~]$

* rockybuild

[me@centos8t01 r8-stream-201801]$ cat /usr/local/bin/rockybuild
#!/bin/sh

ARCH=uname -m

if [ -z "$1" ]; then
if basename $PWD | grep -q "^r8-"; then
echo "ERROR: This branch seems to be a module, append the module:stream to the rockybuild command"
exit 255
fi
MOCKCONFIG="/etc/mock/rocky.$ARCH/baseos.cfg"
else
if [ -f "/etc/mock/rocky.$ARCH/modules/$1.cfg" ]; then
MOCKCONFIG="/etc/mock/rocky.$ARCH/modules/$1.cfg"
shift
else
echo "ERROR: Could not find module config for: '$1'"
exit 255
fi
fi

set -xe

createrepo /usr/share/nginx/html/repo

rpmbuild -bs --nodeps --define "%_topdir pwd" --define "dist .el8" SPECS/*.spec

touch /tmp/mock-include.tpl

mock -r "$MOCKCONFIG" --resultdir=pwd SRPMS/*.src.rpm --cleanup-after "$@"

cp .rpm SRPMS/.src.rpm /usr/share/nginx/html/repo/

createrepo /usr/share/nginx/html/repo

[me@centos8t01 r8-stream-201801]$

* build logs

[me@centos8t01 ~]$ ls
github go rocky rpmbuild
[me@centos8t01 ~]$ cd rocky/
[me@centos8t01 rocky]$ ls
apache-ivy curl
[me@centos8t01 rocky]$ rm -rf apache-ivy/
[me@centos8t01 rocky]$ rockyget apache-ivy

  • mkdir /tmp/srpmproc-cache
  • :
  • srpmproc --version 8 --source-rpm apache-ivy --upstream-prefix https://git.rockylinux.org/staging --storage-addr file:///tmp/srpmproc-cache --tmpfs-mode apache-ivy
    2021/04/11 15:46:53 using tmpfs dir: apache-ivy
    2021/04/11 15:46:54 tag: imports/c8-stream-201801/apache-ivy-2.4.0-14.module+el8+2598+06babf2e
    2021/04/11 15:46:54 tag: imports/c8-beta-stream-201801/apache-ivy-2.4.0-14.module+el8+2598+06babf2e
    2021/04/11 15:46:54 tag: imports/c8-stream-201902/apache-ivy-2.5.0%7erc1-2.module+el8.2.0+4938+c0cffa5b
    2021/04/11 15:46:54 using remote: https://git.rockylinux.org/staging/rpms/apache-ivy.git
    2021/04/11 15:46:54 using refspec: +refs/heads/r8-stream-201801:refs/remotes/origin/r8-stream-201801
    2021/04/11 15:46:54 set reference to ref: refs/heads/r8-stream-201801
    2021/04/11 15:46:54 checking out upstream refspec +refs/heads/c8-stream-201801:refs/tags/imports/c8-stream-201801/apache-ivy-2.4.0-14.module+el8+2598+06babf2e
    2021/04/11 15:46:54 downloading 1efa73e73b5fc14ef003ff2fcb182f039db33ce2 from blob storage
    2021/04/11 15:46:54 set reference to ref: refs/heads/r8-stream-201801
    2021/04/11 15:46:54 info: patch repo not found
    2021/04/11 15:46:54 using remote: https://git.rockylinux.org/staging/rpms/apache-ivy.git
    2021/04/11 15:46:54 using refspec: +refs/heads/r8-stream-201902:refs/remotes/origin/r8-stream-201902
    2021/04/11 15:46:54 set reference to ref: refs/heads/r8-stream-201902
    2021/04/11 15:46:54 checking out upstream refspec +refs/heads/c8-stream-201902:refs/tags/imports/c8-stream-201902/apache-ivy-2.5.0%7erc1-2.module+el8.2.0+4938+c0cffa5b
    2021/04/11 15:46:55 downloading c48b7254fced9f5c6d544b60efa2be47eae869bb from blob storage
    2021/04/11 15:46:55 set reference to ref: refs/heads/r8-stream-201902
    2021/04/11 15:46:55 info: patch repo not found
    {}
    [me@centos8t01 rocky]$ cd apache-ivy/r8-stream-201801
    [me@centos8t01 r8-stream-201801]$ ls
    SOURCES SPECS
    [me@centos8t01 r8-stream-201801]$ rockybuild javapackages-tools:201801
  • createrepo /usr/share/nginx/html/repo
    Directory walk started
    Directory walk done - 214 packages
    Temporary output repo path: /usr/share/nginx/html/repo/.repodata/
    Preparing sqlite DBs
    Pool started (with 5 workers)
    Pool finished
    ++ pwd
  • rpmbuild -bs --nodeps --define '%_topdir /home/me/rocky/apache-ivy/r8-stream-201801' --define 'dist .el8' SPECS/apache-ivy.spec
    Wrote: /home/me/rocky/apache-ivy/r8-stream-201801/SRPMS/apache-ivy-2.4.0-14.el8.src.rpm
  • touch /tmp/mock-include.tpl
    ++ pwd
  • mock -r /etc/mock/rocky8.cfg --resultdir=/home/me/rocky/apache-ivy/r8-stream-201801 SRPMS/apache-ivy-2.4.0-14.el8.src.rpm --cleanup-after javapackages-tools:201801
    INFO: mock.py version 2.9 starting (python version = 3.6.8, NVR = mock-2.9-1.el8)...
    Start(bootstrap): init plugins
    INFO: selinux disabled
    Finish(bootstrap): init plugins
    Start: init plugins
    INFO: selinux disabled
    Finish: init plugins
    INFO: Signal handler active
    Start: run
    ERROR: Cannot find/open srpm: javapackages-tools:201801. Error: [Errno 2] No such file or directory: 'javapackages-tools:201801'
    [me@centos8t01 r8-stream-201801]$

RFE: Ability to compare Rocky VS upstream RPM

  1. WHAT: Nee to see/understand diff of rocky rpm changes if any, per @gmkurtzer idea.
  2. WHY: So we can show rocky is identical with upstream except the needed diffs we introduced.
  3. HOW: Per Googling, See already available tool at https://github.com/lvc/pkgdiff .
    From pkgdiff -h excerpts
EXAMPLES:
  pkgdiff OLD.rpm NEW.rpm
  pkgdiff OLD.deb NEW.deb
  pkgdiff OLD.tar.gz NEW.tar.gz

ARGUMENTS:
   PKG1
      Path to the old version of a package (RPM, DEB, TAR.GZ, etc).

      If you need to analyze a group of packages then you can
      pass an XML-descriptor of this group (VERSION.xml file):

          <version>
            /* Group version */
          </version>

          <group>
            /* Group name */
          </group>

          <packages>
            /path1/to/package(s)
            /path2/to/package(s)
            ...
          </packages>


  1. End

rockymockgen: missing yaml module/package

Following the directions, seems to be a missing module for go ( both zip file and git main branch.

[root@dhcp-10-11-31-211 ~]# git clone https://github.com/rocky-linux/devtools.git
Cloning into 'devtools'...
remote: Enumerating objects: 294, done.
remote: Counting objects: 100% (294/294), done.
remote: Compressing objects: 100% (223/223), done.
remote: Total 294 (delta 111), reused 221 (delta 65), pack-reused 0
Receiving objects: 100% (294/294), 143.29 KiB | 3.18 MiB/s, done.
Resolving deltas: 100% (111/111), done.
[root@dhcp-10-11-31-211 ~]# cd devtools/
[root@dhcp-10-11-31-211 devtools]# make
go get gopkg.in/yaml.v2
touch .go-setup
go build -o src/rockymockgen src/rockymockgen.go
src/rockymockgen.go:8:5: no required module provides package gopkg.in/yaml.v2: go.mod file not found in current directory or any parent directory; see 'go help modules'
make: *** [Makefile:31: src/rockymockgen] Error 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.