Commit Graph

29 Commits

Author SHA1 Message Date
Dale Smith df8c3e4a8b Update documentation to reflect newer OpenStack and confspirator
Change-Id: I06c30af22222f067d5630492a3e053a510fd7b69
2023-01-04 07:24:00 +00:00
Adrian Turjak 43e0c625e3 Allow authenticated token requirement for tasks
Tasks when defined can now set if they require the user submitting
a token to be authenticated.

keystone_user is now passed to actions when a token
is submitted. This requires all actions to update their submit
function, but a suitable fallthrough will exist for a cycle to
allow time.

Also fixes a minor issue around where error handling for
renamed or deprecated tasks is handled that cropped up
while testing this patch.

Change-Id: I4b51201872cb5a14f299f90e22a8b010d11a71cb
2020-09-17 13:01:12 +12:00
Adrian Turjak 9dd1f3a302 Update CONFspirator with example and toml support
Example config generation now is in CONFspirator so we can instead
use that.

We now also natively get toml support through the new version of the
library.

Change-Id: Ic3a46d075dd83e11ee3cccc1ad2bbdb81005c60d
2020-08-07 20:28:24 +12:00
melissaml 9ef78c436e Fix pygments style
New theme of docs respects pygments_style.

more info: http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html

Change-Id: I0247f2e6e76d9995f1720eac8be180e64c5bf243
2020-06-23 15:39:49 +08:00
Andreas Jaeger b32d0be3a0 Switch to newer openstackdocstheme and reno versions
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems

Update Sphinx version as well.

Disable openstackdocs_auto_name to use 'project' variable as name.

openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.

See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html

Change-Id: Ic5488acc81538c1dbde70fcc52d9175e3b98059a
2020-05-24 20:23:55 +02:00
Adrian Turjak 64e9a8bcd9 Community goal contributing docs
Change-Id: I71084e1b81d64d7afe0d14647177afeb223d4ed7
Story: #2007236
Task: #38513
2020-05-01 10:42:55 +12:00
Andreas Jaeger de799a89ca Update for Python 3
This repo is now Python 3 only, make a few updates:
* Move basepython to testenv
* Require newer tox version and ignore base conflicts
* update openstackdocstheme and sphinx versions
* Use newer TOX_x for constraints

Change-Id: I1407b408bee9e848243a60d40fd7df90bf1705d1
2020-04-29 09:03:11 +02:00
Adrian Turjak 2c62daf542 Reformat code using the Black style linter
Change-Id: I55cf016fe073e92fe4466f38b95ebdcd9ec58e84
2020-02-21 14:43:31 +13:00
Adrian Turjak 0eaac89b38 Refactor the plugin layer to use entrypoints
Introduce the concept of a feature set, which can be
registered to an entrypoint.

Rework all existing core elements into a 'core' feature
set.

Remove the ability to add in random django apps, and drop
the ablity for plugins to optionally be able to great
new DB models.

Change-Id: Idc5c3bf3facc44bb615fa4006d417d6f48a16ddc
2020-02-05 19:07:54 +13:00
Adrian Turjak c750fd6d6c Rework Adjutant's config system to use CONFspirator
CONFspirator was written to just specifically for Adjutant
and it allows us to do oslo.config style config management
and definition with nested groups and for yaml.

This is a major change that touches vast amounts of the
code simply because of how much the config touches.

Actions, Tasks, DelegateAPIs, and Notification Handlers
now can define config in their own class and this will
be added to the config.

All the other config is located in `adjutant.config`,
with everything now registed nicely on the config tree,
and grouped in much saner ways.

CONFspirator will also now allow Adjutant to be entirely
configured via environment variables.

We have removed `modify_dict_settings` because that is
now entirely handled by CONFspirator's test utils.

`NotificationEngine`s are now `NotificationHandler`s.

`test_settings.py` is gone! And we now have better ways
to define test settings and defaults.

Project line length bumped to 88, and bugbear added to enforce
that instead.

Story: 2004488

Change-Id: I1d97d72d06b3a3a5df90355d3a4b4fe414381424
2020-02-05 19:07:04 +13:00
Adrian Turjak c9038dfe69 Major refactor of the Adjutant task layer
This patch splits out the Task layer and the API
layer. This will better allow us to build more logic
into the task layer, and better allow the APIs to be
more flexible.

This sets the foundations for future additions to task
definitions, async task processing, and an overhaul of
the config system for the service.

- Task model and logic moved to 'tasks' app
- TaskViews are now DelegateAPIs
- stage email templates have been moved to the tasks app
- better define Task model indexes
- rename task/action stage pre_approve to prepare
- rename task/action stage post_approve to approve
- Added new TaskManager class for handling tasks
- Removed redundant ip_address value on Task model
- Remove redundant UserSetPassword view
- Added custom exception handling for the API
- Add new exception types
- Simplified error responses by raising exceptions
- standardized task API response codes on 202 unless
  task is completed
- Use 503 Service Unavailable for service issues
- Various task_types changed:
    - create_project to create_project_and_user
    - invite_user to invite_user_to_project
    - reset_password to reset_user_password
    - edit_user to edit_user_roles
    - update_email to update_user_email
- reissuing task token now deletes old task tokens

Story: 2004489

Change-Id: I33381c1c65b28b69f6ffeb3d73b50be95ee30ba7
2019-12-04 14:24:57 +13:00
Andreas Jaeger f81cf9a905 Update docs building
Follow PTI [1] for doc building:
* Create doc/requirements.txt file with all docs requirements.
* Switch to openstackdocstheme and update conf.py for this.
* Move doc8 to pep8 section since it's a linter.

Additionally:
* Fix all build errors with doc building.
* Update requirements list with license info.
* Use hacking instead of flake directly.
* Remove unused _static files, those are not needed.
* Update git URLs, fix contributor guide URL
* Move README.md to RST, everything else in this repo is RST
* Publish documents to docs.o.o - note that
  https://adjutant.readthedocs.io/en/latest/ was last updated  in March
  2018

This adds jobs for building of release notes - only building since
there's no content yet - and publishing of documentation.

Publishing of api-ref can be done via:
 https://review.opendev.org/675766

[1] https://governance.openstack.org/tc/reference/project-testing-interface.html#documentation

Change-Id: I82f56ef5ea800899b2a8db795b6cf2b21d03ac7a
2019-08-11 12:06:13 +02:00
Adrian Turjak 470f253003 Added support for reno release notes
Change-Id: Icf04f5d8dcb4a04f567e6a3bc10760831e6b43cc
2019-07-02 15:04:04 +12:00
jacky06 7f3a7b6755 Sync Sphinx requirement
1. Sync sphinx dependency with global requirements. It caps python 2 since
sphinx 2.0 no longer supports Python 2.7.
2. Remove unncessary "=="

Change-Id: I86e633512de5e35384f8dc7aa0b29a1fc07aef97
2019-06-18 21:59:27 +08:00
Zuul 8e2b734398 Merge "Spelling mistake, refered -> referred" 2018-12-01 17:15:02 +00:00
Zuul 778d55b7c9 Merge "Consistent about using True and False and not true and false" 2018-12-01 17:14:50 +00:00
zhouxinyong c8cbbdbfa9 Fix mutiple world in history.rst
Change-Id: Idbf6b284acfdd3c8c4caa59c9f7f4504755d4bae
2018-12-01 12:26:37 +00:00
Jonathan Herlin fdc8be0910 Spelling mistake, refered -> referred
Fix spelling of "refered" to "referred" and reorder two words in
sentence

Change-Id: I80677c6273e6987ef35b0199b59233b036f72bf0
2018-12-01 12:26:29 +00:00
Jonathan Herlin 7a0a8f23f0 Consistent about using True and False and not true and false
Patch to make sure that True and False is consistent between
documentation and the configuration template

Change-Id: I562fbccc27a92a9c4f0ed851951f78da0cc5319c
2018-12-01 12:26:17 +00:00
chenjiao 93dfcb1cea recieve spelling error
recieve spelling error

Change-Id: Id2a191f7bc5e8ff9f003d3bf8f6a7c5e7c40f2d1
2018-09-07 09:40:31 +08:00
melissaml e393a7ecc4 fix typos in documentation
Change-Id: I111dd574af43300c34c2a78380274ade0b57210b
2018-05-23 20:54:12 +08:00
Doug Hellmann f1cb43076e fix typo in history document
As much as I agree that ERP systems tend to be "eternal", I think you
meant "external" here.

Change-Id: I1c2b8e9b984fef42b1dded444e165a907cd53f62
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-03-20 12:40:56 -04:00
Adrian Turjak 9fefbfe85b Add documentation for the project history and guide lines
Because of how vague the scope of Adjutant is (for a reason)
we need a way to define what actually fits in a sensible way.
The new guide lines are part of that, and we're also now
adding a section to our docs about the project history to
explain why the scope is so vague and how it got there.
Plus a section on project features, to help define what it
can do.

Change-Id: I7d05c1f43570843171a4144ece2228efc3227cce
2018-03-15 22:48:00 +13:00
Amelia Cordwell 31a1d63559 Add Quota Docs and API references
Change-Id: I37de58f73993b20ff0be194f1c33271a2bfd4e26
2018-02-12 14:33:35 +13:00
Adrian Turjak 6ea0993e34 fix doc codeblock missing extra space
Change-Id: I17fa9be569cdd8b12a8bdf73c0eea52e1aec4f75
2018-01-19 11:35:48 +13:00
Adrian Turjak 1d5635fdcb add the option to disable auto approve for tasks
* This add a simple config option for tasks that lets a deployer
  selectively disable auto_approve for tasks that normally would
  approve themselves.
* adds a test to confirm this functionality works as expected.
* add a doc note about how to use this feature.

Implements: disable-auto-approve
Change-Id: I3cabd8a39c9ff1d3fc3f4dd8c50a8fa83f031fcf
2017-12-22 11:38:11 +13:00
Amelia Cordwell 6cbf3fa7f7 Documentation and Api Reference
* API Reference and documentation as two seperate sphinx
  document sets
* Information from the Devstack guide and README moved over
  to the new documentation
* Configuration examples
* Examples of building plugins
* Both use the new sphinx-rtd-theme

Change-Id: If347905aa14b77b5943f1a9de97f6e287b98ce95
2017-11-04 18:00:28 +13:00
lioplhp 2f0dad2f42 Remove link to modindex
The documentation build does not generate any module index, thus
remove the link to the page.

Change-Id: Iaf2b5468f910678cd14ec95709d8a2ec51d37021
2017-09-13 17:31:20 +08:00
adrian-turjak c17320c069 Update test files for openstack-infra
* also update the gitreview file
* add base doc folder for future use (and to make
  CI happy)

Change-Id: Ifd854682c8121720e940c0a7d8ac3656cbf97af0
2017-06-21 16:18:37 +12:00