Skip to content

[v7r1] docs: user manage, proxy manager (issue #4702)#4853

Merged
atsareg merged 51 commits into
DIRACGrid:rel-v7r1from
TaykYoku:v7r1_user_manage_docs
Feb 3, 2021
Merged

[v7r1] docs: user manage, proxy manager (issue #4702)#4853
atsareg merged 51 commits into
DIRACGrid:rel-v7r1from
TaykYoku:v7r1_user_manage_docs

Conversation

@TaykYoku

@TaykYoku TaykYoku commented Nov 28, 2020

Copy link
Copy Markdown
Contributor

BEGINRELEASENOTES
This PR provide documentation about user management, ProxyManager, etc. This PR is trying to solve #4702 .

*Framework
CHANGE: docs

*Resources
CHANGE: docs

*docs
NEW: user management, ProxyManager
CHANGE: move Registry from ConfReference to dirac.cfg
CHANGE: move CommandReference content to scripts docs

ENDRELEASENOTES

Comment thread FrameworkSystem/Client/ProxyManagerClient.py Outdated
Comment thread FrameworkSystem/ConfigTemplate.cfg Outdated
Comment thread FrameworkSystem/DB/ProxyDB.py Outdated
Comment thread dirac.cfg
Comment thread docs/source/AdministratorGuide/Systems/Framework/ProxyManager/index.rst Outdated
Comment thread docs/source/AdministratorGuide/Systems/Framework/ProxyManager/index.rst Outdated
Comment thread docs/source/AdministratorGuide/Systems/Framework/ProxyManager/index.rst Outdated
Comment thread docs/source/AdministratorGuide/UserManagement/index.rst Outdated
Comment thread docs/source/AdministratorGuide/UserManagement/index.rst Outdated
Comment thread docs/source/AdministratorGuide/UserManagement/index.rst Outdated
@TaykYoku TaykYoku requested a review from chaen as a code owner December 1, 2020 19:20
@fstagni

fstagni commented Dec 2, 2020

Copy link
Copy Markdown
Contributor

That's a lot of docs, thanks! On my side, just fix

/Core/scripts/dirac-version.py:11:18: W291 trailing whitespace

and that's it.

@andresailer andresailer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for all this work!

As this PR is still WIP so the developer part of the proxy manager docs are still coming, I guess?

Comment thread FrameworkSystem/DB/ProxyDB.py Outdated
Comment thread FrameworkSystem/scripts/dirac-status-component.py Outdated
Comment thread Interfaces/scripts/dirac-admin-add-group.py Outdated
Comment thread Interfaces/scripts/dirac-admin-add-host.py Outdated
Comment thread Interfaces/scripts/dirac-admin-modify-user.py Outdated
Comment thread docs/source/AdministratorGuide/Systems/Framework/ProxyManager/index.rst Outdated
Comment thread docs/source/AdministratorGuide/Systems/Framework/ProxyManager/index.rst Outdated
Comment thread docs/source/AdministratorGuide/UserManagement/index.rst Outdated
Comment thread docs/source/AdministratorGuide/UserManagement/index.rst Outdated
Comment thread docs/source/AdministratorGuide/UserManagement/index.rst Outdated
@fstagni

fstagni commented Dec 9, 2020

Copy link
Copy Markdown
Contributor

Thanks for all this work!

As this PR is still WIP so the developer part of the proxy manager docs are still coming, I guess?

Maybe it could be merged already, and that part come in a second PR?

@fstagni

fstagni commented Dec 9, 2020

Copy link
Copy Markdown
Contributor

BTW @chaen should comment here as he opened originally the issue that is addressed here.

@TaykYoku

TaykYoku commented Dec 9, 2020

Copy link
Copy Markdown
Contributor Author

Thanks for all this work!
As this PR is still WIP so the developer part of the proxy manager docs are still coming, I guess?

Maybe it could be merged already, and that part come in a second PR?

I'd better add this part later when OAuth 2 PR is adopted

@chaen

chaen commented Dec 9, 2020

Copy link
Copy Markdown
Contributor

BTW @chaen should comment here as he opened originally the issue that is addressed here.

I am in the process, but it takes time ! :D

@chaen chaen left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for all this docs ! It already ticks quite a few boxes of #4702

Am I correct in understanding that all the IDProvider and ProxyProvider things will only be enabled in v7r2 ? If that is the case, then it is fine to leave them aside for the time being

Comment thread docs/source/AdministratorGuide/CommandReference/dirac-version.rst Outdated
Comment thread Resources/ProxyProvider/DIRACCAProxyProvider.py Outdated
Comment thread dirac.cfg
Comment thread FrameworkSystem/ConfigTemplate.cfg
Comment thread FrameworkSystem/Client/ProxyManagerClient.py
Comment thread DataManagementSystem/scripts/dirac-admin-ban-se.py
Comment thread DataManagementSystem/scripts/dirac-admin-user-quota.py Outdated
Comment thread FrameworkSystem/scripts/dirac-admin-proxy-upload.py
Comment thread Interfaces/scripts/dirac-admin-get-banned-sites.py Outdated
@@ -0,0 +1,101 @@
.. _admin_usermanagement:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you factorize this doc with https://dirac.readthedocs.io/en/rel-v7r1/AdministratorGuide/HowTo/authentication.html ? There are quite a lot of duplicates. Maybe all the command examples should go in the how-to

And maybe adding a few words and links to the ProxyProvider ?

@TaykYoku TaykYoku force-pushed the v7r1_user_manage_docs branch from e62a291 to 9ee37fc Compare January 5, 2021 20:16
Comment thread docs/diracdoctools/Utilities.py
@TaykYoku TaykYoku changed the title [v7r1][WIP] docs: user manage, proxy manager (issue #4702) [v7r1] docs: user manage, proxy manager (issue #4702) Jan 9, 2021
Comment thread docs/Makefile Outdated
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = build
CFGPATH = ../dirac.cfg

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apologies, I proposed to put this in the Makefile, but I forgot that readthedocs doesn't use the makefile to build the documentation. It only uses the conf.py.

if os.environ.get('READTHEDOCS') == 'True':

Could you instead do the copy here for example?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This still needs to be moved from the makefile to the concatcfg command

Comment thread Core/scripts/dirac-deploy-scripts.py Outdated
Comment thread FrameworkSystem/ConfigTemplate.cfg Outdated
storeHostInfo = Operator
}
}
## ProxyManager:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can surround the doc with

  ##BEGIN ProxyManager
...

  ##END

And use it in the ProxyManagerHandler.py (see examples e.g. in TransformationSystem). What you did works the same, but it's not the "standard" way we have done it in other DIRAC systems.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that we should follow the standard, but in my opinion this view is more readable. Given that the documentation uses not only "clippings" from the configuration but also the full text of the configuration, such a record makes it easier (many words BEGIN, END complicate reading).
So what do you think this makes sense?

In the ProxyManagerHandler.py is already used.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For ConfigTemplate.cfg files please stick to ##BEGIN xxxxxx and ##END

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If my arguments are not convincing, then ok.. That is, to fix it in ConfigTemplate.cfg, or both in ConfigTemplate.cfg and in dirac.cfg? Because in the end everything is mixed into the overall configuration https://dirac.readthedocs.io/en/latest/AdministratorGuide/Configuration/ExampleConfig.html

@@ -3,13 +3,23 @@
# File : dirac-admin-proxy-upload.py

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to keep this script? It seems redundant to me.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMHO this tool is sometimes useful.

Comment thread Resources/ProxyProvider/DIRACCAProxyProvider.py
Comment thread dirac.cfg
@andresailer

Copy link
Copy Markdown
Contributor

Why this move
docs/diracdoctools/cmd/→ docs/diracdoctools/diraccmd/
?

@TaykYoku

Copy link
Copy Markdown
Contributor Author

an error occurs during assembly:
AttributeError: 'module' object has no attribute 'Cmd'

this cmd module conflicts with the standard library module. As a result, pdb actually imports a different cmd module than it is trying to, one that does not have a Cmd class.

@andresailer

Copy link
Copy Markdown
Contributor

Under what circumstances does this error occur ? There is no Cmd (capital C) in docs

There are external users of this however, https://gitlab.cern.ch/lhcb-dirac/LHCbDIRAC/-/blob/master/docs/source/conf.py#L43

@TaykYoku

Copy link
Copy Markdown
Contributor Author

Unfortunately, I did not keep the full log

  516  cd docs;
  517  export PYTHONPATH=$PWD:$PYTHONPATH
  518  make htmlall

as a result got something like this ParmEd/ParmEd#148

@andresailer

Copy link
Copy Markdown
Contributor

Are you sure you didn't accidentally put diracdoctools in your PYTHONPATH? Which would trigger this problem, otherwise there is no need to rename this folder

cd docs
PYTHONPATH=$PWD/diracdoctools:$PWD:$PYTHONPATH make html
cp ../dirac.cfg source/ && sphinx-build -b html -d build/doctrees   source build/html
Running Sphinx v1.8.5
                  conf.py:     INFO: Current location '/home/sailer/work/software/DIRAC/DIRAC/docs/source'
                  conf.py:     INFO: DiracDocTools location '/home/sailer/work/software/DIRAC/DIRAC/docs/diracdoctools/__init__.pyo'
                  conf.py:     INFO: DiracDocTools location '/home/sailer/work/software/DIRAC/DIRAC/docs/diracdoctools/Utilities.pyo'
                  conf.py:     INFO: DiracDocTools location '/home/sailer/work/software/DIRAC/DIRAC/docs/diracdoctools/cmd/__init__.pyo'
                  conf.py:     INFO: Found dirac version 'v7r1p25'
                  conf.py:     INFO: DIRACVERSION is 'v7r1p25'

Exception occurred:
  File "/home/sailer/work/software/DIRAC/diracos/usr/lib64/python2.7/pdb.py", line 59, in <module>
    class Pdb(bdb.Bdb, cmd.Cmd):
AttributeError: 'module' object has no attribute 'Cmd'

@TaykYoku

Copy link
Copy Markdown
Contributor Author

so it could happen .. i will check again and put everything back if the reason was.

@TaykYoku TaykYoku closed this Jan 23, 2021
@TaykYoku TaykYoku reopened this Jan 23, 2021
@atsareg atsareg merged commit 2a7dee9 into DIRACGrid:rel-v7r1 Feb 3, 2021
@TaykYoku TaykYoku mentioned this pull request Feb 9, 2021
TaykYoku added a commit to TaykYoku/DIRAC that referenced this pull request Jul 30, 2021
@TaykYoku TaykYoku deleted the v7r1_user_manage_docs branch July 31, 2021 12:34
fstagni added a commit that referenced this pull request Aug 2, 2021
[v7r2] fix ProxyManagerClient docs (from #4853)
fstagni added a commit to fstagni/DIRAC that referenced this pull request Aug 3, 2021
* upstream/rel-v7r2:
  v7r2p19
  fix highlight:: console
  fix (should be a list)
  update instructions for release
  if a user is in quarantinegroup, remove it from all others
  v7r2p18
  Echo storage: throttle deletion
  GFAL2_StorageBase: make private methods protected
  CSA: use real setup to look in correct CS paths
  PR DIRACGrid#4853
  DRA: fix divide by zero if we have just 1 job
  PY3: Fix call to JobMonitoringClient.getJobsStatus in WorkflowTasks
fstagni pushed a commit that referenced this pull request Aug 4, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants