DevonianTeuchter / meta

Meta repository to tie together the various underlying z/OS Open Source tools repositories here
https://zosopentools.github.io/meta/
Apache License 2.0
2 stars 0 forks source link

fulton feedback #3

Open MikeFultonDev opened 1 year ago

MikeFultonDev commented 1 year ago

can you add a 'getting started' here for folks so they know how to unpax and set up so they can use zopen?

MikeFultonDev commented 1 year ago

First try - I think this failed because I had a symbolic link from $HOME/zopen to $HOME/zosopentools that it didn't detect.

 ./zopen init
Initialize zopen framework
- Enter fully-qualified path to your zopen root directory (default: $HOME/zopen)

- No explicit root set, using default: $HOME/zopen
- Enter the github oauth token for use in zopen-download. If none (not recommended), press enter
- Populating standard file system
- Creating path for bootstrap files
- Creating symbolic path for prod redirect files
- Creating path for certificate lookups
- Created config in /home/fultonm/.zopen-config.
- Root FS available at /home/fultonm/zopen
- Check for local curl pax
- Found curl-7.83.1.20230120_231325.zos.pax.Z. Adding to zopen cache to install as bootstrap
- Setting certificate envvar
***ERROR: Could not locate curl for bootstrap. Re-run 'zopen init' to retry
MikeFultonDev commented 1 year ago

Second try - it takes a really long time to when it gets to 'Processing 0 of 11' (maybe my counter doesn't work in 'sh' ?)

./zopen init
- z/OS Open Tools configuration completed in 0 seconds.
Initialize zopen framework
***WARNING: - Existing configuration file found; re-initializing might lose access to previously installed packages. Continue (y/n)?
y
- Re-initializing; removing existing .zopen-config
- Enter fully-qualified path to your zopen root directory (default: $HOME/zopen)

- No explicit root set, using default: $HOME/zopen
- Enter the github oauth token for use in zopen-download. If none (not recommended), press enter
- Populating standard file system
- Creating path for bootstrap files
- Creating symbolic path for prod redirect files
- Creating path for certificate lookups
- Created config in /home/fultonm/.zopen-config.
- Root FS available at /home/fultonm/zopen
- Check for local curl pax
- Found curl-7.83.1.20230120_231325.zos.pax.Z. Adding to zopen cache to install as bootstrap
- Setting certificate envvar
Setting up curl...
Setup completed.
- Updating CA cert
Getting latest CA Certificate
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  211k  100  211k    0     0  1912k      0 --:--:-- --:--:-- --:--:-- 1922k
Re-creating /home/fultonm/zopen/etc/pki/tls/certs/cacert.pem
- Sourcing environment
- z/OS Open Tools configuration completed in 0 seconds.
- Using bootstrapped curl to install latest release of itself (if available)
***WARNING: Setting ZOPEN_GIT_OAUTH_TOKEN is recommended to ensure that you do not hit the GitHub API cap. See --help for more details.
Installing package: curl
- Installing curl...
- Downloading curl-7.88.1.20230423_213717.zos.pax.Z to cache...
- Extracting curl-7.88.1.20230423_213717.zos.pax.Z...
- Integrating package into file system
- Processing 0 of 11: % (/)
- Integration complete
- Checking for env file
- .env file found, adding to profiled processing
- Re-sourcing environment to run any setup
- Checking for runtime dependencies
- No runtime dependencies found
Successfully installed curl
- Installing and pinning currently running version of meta
- Running alternative utility to allow selection of forked meta
1: meta-dt

After 10 minutes on a fast machine I will still at 1... Here is what 'ps' looked like:

pshef
 FULTONM   16784161       5412  - 19:58:28 ?         0:00 /usr/sbin/sshd -R
 FULTONM       8140   16784161  - 19:58:29 ttyp0004  0:00 -sh
 FULTONM   83891765   83888903  - 20:55:09 ?         0:00 /usr/sbin/sshd -R
 FULTONM   67110995   83891765  - 20:55:09 ttyp0014  0:00 -sh
. FULTONM   83893070   67110995  - 20:59:12 ttyp0014  0:00 /bin/sh /home/fultonm/meta/bin/lib/zopen-init
.. FULTONM   83893679   83893070  - 21:01:51 ttyp0014  0:00 /bin/sh /home/fultonm/meta/bin/lib/zopen-init
... FULTONM   67116636   83893679  - 21:01:51 ttyp0014  0:00 /bin/sh /home/fultonm/meta/bin/lib/zopen-alt meta -s
.... FULTONM   67114079   67116636  - 21:01:51 ttyp0014  0:00 /bin/sh /home/fultonm/meta/bin/lib/zopen-alt meta -s

I re-started it all with a proper GIT token thinking that might help (it did not).

Suggestion: perhaps if the ZOPEN_GIT_OAUTH_TOKEN env var is specified, you could use it?

MikeFultonDev commented 1 year ago

This is the output of my set

set
@="-sh"
BASH_HOME="/home/fultonm/zosopentools/prod/bash-5.2.15"
DEFAULT_BPXK_AUTOCVT=""
DEFAULT_CEE_RUNOPTS="AL(ON)"
DEFAULT_LIBPATH="/usr/lib:/usr/lpp/tcpip/lib/nls/msg/C/:/usr/lpp/IHSA/V8R0/lib"
DEFAULT_PATH="/bin:.:/usr/sbin:/:/tools/:/usr/local/bin:/bin:/etc/sip:/home/fultonm:/usr/lpp/gskssl/bin"
EPHBookReadConfig="/etc/booksrv/bookread.conf"
ERRNO="0"
HOME="/home/fultonm"
IFS="
"
LANG="C"
LIBPATH="/usr/lib"
LINENO="0"
LOCALE_SWITCH="EXECUTED"
LOGNAME="FULTONM"
MAIL="/etc/mail/FULTONM"
MAILCHECK="600"
MANPATH="/home/fultonm/zosopentools/prod/bash-5.2.15/share/man:/usr/man/%L"
NLSPATH="/usr/lib/nls/msg/%L/%N:/usr/lpp/tcpip/lib/nls/msg/C/:/usr/lib/nls/msg/%L/%N.cat"
OLDPWD="/home/fultonm/samples/processes"
OPTIND="1"
PATH="/home/fultonm/zosopentools/prod/bash-5.2.15/bin:/bin:usr/local/bin"
PPID="16784161"
PS1="\$system_name:\$PWD>"
PS2="> "
PS3="#? "
PS4="+ "
PWD="/home/fultonm/zopen"
RANDOM="6527"
SECONDS="4525"
SHELL="/bin/sh"
SSH_CLIENT="9.15.131.119 63157 22"
SSH_CONNECTION="9.15.131.119 63157 9.114.209.18 22"
SSH_TTY="/dev/ttyp0004"
STEPLIB="none"
TERM="xterm"
TZ="EST5EDT"
USER="FULTONM"
_="/home/fultonm/samples/processes/pshef"
_BPXK_AUTOCVT="ON"
_BPX_SHAREAS="NO"
_C89_CCMODE="1"
_C89_CLIB_PREFIX="CBC"
_C89_CNAME="CCNDRVR"
_C89_CVERSION="0x410C0000"
_C89_INCDIRS="/usr/include //DD:SYSLIB           //'CEE.SCEEH.NET.H'           //'CEE.SCEEH.H'          //'CEE.SCEEH.NETINET.H'"
_C89_PLIB_PREFIX="CEE"
_C89_PMSGS="EDCPMSGE"
_C89_PNAME="EDCPRLK"
_C89_PVERSION="0x410C0000"
_C89_WORK_SPACE="(32000,(250,250))"
_C89_WORK_UNIT="VIO"
_CC_CCMODE="1"
_CC_CLIB_PREFIX="CBC"
_CC_CNAME="CCNDRVR"
_CC_CVERSION="0x410C0000"
_CC_PLIB_PREFIX="CEE"
_CC_PMSGS="EDCPMSGE"
_CC_PNAME="EDCPRLK"
_CC_PVERSION="0x410C0000"
_CC_WORK_SPACE="(32000,(250,250))"
_CC_WORK_UNIT="VIO"
_CEE_RUNOPTS="FILETAG(AUTOCVT,AUTOTAG) POSIX(ON)"
_CXX_CCMODE="1"
_CXX_CLASSLIB_PREFIX="CBC"
_CXX_CLIB_PREFIX="CBC"
_CXX_CNAME="CCNDRVR"
_CXX_CVERSION="0x410C0000"
_CXX_INCDIRS="/usr/include //DD:SYSLIB           //'CEE.SCEEH.NET.H'           //'CEE.SCEEH.H'          //'CEE.SCEEH.NETINET.H'"
_CXX_PLIB_PREFIX="CEE"
_CXX_PMSGS="EDCPMSGE"
_CXX_PNAME="EDCPRLK"
_CXX_PVERSION="0x410C0000"
_CXX_WORK_SPACE="(32000,(250,250))"
_CXX_WORK_UNIT="VIO"
_TAG_REDIR_ERR="txt"
_TAG_REDIR_IN="txt"
_TAG_REDIR_OUT="txt"
dsm_log="/tmp"
system_name="ZOSCAN2B"

This is my .profile:

export DEFAULT_PATH=$PATH
export DEFAULT_LIBPATH=$LIBPATH
export DEFAULT_BPXK_AUTOCVT=$_BPXK_AUTOCVT
export DEFAULT_CEE_RUNOPTS="$_CEE_RUNOPTS"

export _BPXK_AUTOCVT=ON
export _CEE_RUNOPTS='FILETAG(AUTOCVT,AUTOTAG) POSIX(ON)'

export PATH=/bin:/usr/local/bin
export LIBPATH=/usr/lib

if [ -d "${HOME}/zopen/prod/bash" ]; then
  cd "${HOME}/zopen/prod/bash"
  . ./.env
  cd "${HOME}"
else
    alias vi=/bin/vi
fi
set -o emacs
export TERM=xterm

if [ -d "${HOME}/zopen/prod/bash" ]; then
  bash
fi
DevonianTeuchter commented 1 year ago

Install performance isn't great at the moment due to the merge-logic - hopefully this will be resolved (or at least improved) for 0.0.3. The lack of updates to the status is an oddity that I've recreated and am investigating (but likely to change with the above rework) (The performance is why locking was introduced for certain actions due to the long-running nature)

MikeFultonDev commented 1 year ago

I think it’s more than performance. I left it for 1/2 hour and didn’t see any updates. Have you tried an install without any particular tools installed - ie no bash in the PATH?

DevonianTeuchter commented 1 year ago

Yep, my test systems don't use/have bash - until it gets installed (explicitly or as a dep). Could you pipe -x trace to a file and send (via slack?) so I can compare with a successful scenario (redacting your Git token of course!)

MikeFultonDev commented 1 year ago

Hm. What does 'pipe -x trace' mean?

DevonianTeuchter commented 1 year ago

sorry Mike, didn't get notification that you'd replied: By pipe -x trace - basically, add a "-x" to the #!/bin/sh on line 1 of lib/zopen-download and then: zopen init 2>zopeninit.log 2>&1
Issue is that you won't see any of the questions the initialisation script asks so you'd either need to remember the answers to type them in "blind", or have a second terminal running tail -f on the log file