Commit Graph

136 Commits

Author SHA1 Message Date
Nate Johnston bba805af02 Retire the Congress project
Recently the TC has worked on determining the criteria for when an
OpenStack project should be retired.  When there was not a PTL nominee
for the Congress project, that triggered the TC to review the project
health per [1], and the TC has determined [2] that development work on
the project has ceased.  This decision was announced in the
openstack-discuss mailing list in April 2020 [3].

This commit retires the repository per the process for governance
removal in the Victoria cycle as specified in the Mandatory Repository
Retirement resolution [4] and detailed in the infra manual [5].

Should interest in developing Congress as part of OpenStack revive,
please revert this commit to have the project rejoin the list of active
projects.

The community wishes to express our thanks and appreciation to all of
those who have contributed to the Congress project over the years.

[1] https://governance.openstack.org/tc/reference/dropping-projects.html
[2] http://eavesdrop.openstack.org/irclogs/%23openstack-tc/latest.log.html#t2020-04-20T15:36:59
[3] http://lists.openstack.org/pipermail/openstack-discuss/2020-April/014292.html
[4] https://governance.openstack.org/tc/resolutions/20190711-mandatory-repository-retirement.html
[5] https://docs.opendev.org/opendev/infra-manual/latest/drivers.html#retiring-a-project

Change-Id: I21c9ab9820f78cf76adf11c5f0591c60f76372a8
2020-05-28 18:12:16 +02:00
Anusha Ramineni 07e925c3ae Implement horizon plugin model
This commit moves the horizon code from contrib/horizon to
congress_dashboard to install as plugin. Added README for the same.
http://docs.openstack.org/developer/horizon/tutorials/plugin.html
Note: Passes basic testing with v2 authentication
      This commit doesn't address issue with V3 authentication.It is being
      fixed as part of Bug: #1602837

Implements: blueprint congress-horizon-plugin
Change-Id: I06da4a47f61739635e6f1756f773b236ebde55c9
2016-08-10 03:49:44 +00:00
Anusha Ramineni 87f6d5c23d Use auth_url from horizon settings
Change-Id: Ic7fbd9b1e211f8acf5ed6634089d91af601dbfaf
2016-07-22 11:47:49 +05:30
Andrey Kurilin 57411fec5e Fix wrong usage of novaclient
novaclient.client.Client is a documented way to initialize novaclient.
Also, it provides a backward compatible layer.

Change-Id: I9dd15abbeda26c5a6a40139ce47a200720decce8
Closes-Bug: #1493576
2016-06-21 21:31:08 +03:00
Anusha Ramineni e688881b47 Add option to specify --kind while creating policy
This commits allows user to specify the kind of policy while
creating policy through horizon

Change-Id: I1f78670afb3aa27ed58e59aba1ccd23d89125e95
Closes-Bug:#1525836
2016-01-11 16:17:26 +05:30
Anusha Ramineni f305766409 Cleanup old devstack related files in contrib
This patch cleans up the devstack directory in contrib, which is no
longer required if devstack plugin model is used.

Change-Id: I3507817eda7222eaeb09ee88f0d55e497d1bcf4e
Implements: blueprint add-devstack-plugin
Depends-On:If6e6fc73673624d6edcb022bd5983c1b30356970
2015-11-20 04:06:43 +00:00
Jenkins 4f05eb85d4 Merge "Add swift back in devstack" 2015-10-14 19:03:12 +00:00
Yingxin Cheng 6474767b17 Change devstack to OS_PROJECT_NAME and avoid mocking oslo.policy internals
To pass the tests in gate, this commit has 2 separate changes

1) OS_TENANT_NAME is no longer used in the latest devstack, it causes all
datasource driver fail, as well as jenkins gate failure.

This fix changes devstack to use OS_PROJECT_NAME

2) Previously, we tested oslo.policy by mocking out one of the internals
of oslo.policy, just like Neutron.  Besides being improper, the newest
release of oslo.policy broke that test, which is what is blocking
the tip of master currently.

This fix shamelessly copies the fix out of Neutron, mocking out
at the layer of HTTPCheck.

Change-Id: I2a4eae714946ce98a060a43dd501b9b3619aa68e
Closes-Bug: #1505057
Closes-bug: #1505750
2015-10-13 17:34:29 -07:00
Zhenzan Zhou 98dba2554e Add swift back in devstack
It's disabled as a TODO. Now swift is able to run, so add it back.

Change-Id: I2564e9525f6685128f2fc005fd2b06285b345098
2015-10-12 15:03:20 +08:00
Jenkins c70dc74b81 Merge "Change to use tempest plugin framework" 2015-09-25 17:53:14 +00:00
su_zhang e13f5f2214 Symantec's domain quota policy enforcement
Change-Id: I1faac8ad9423058949d2c7a0184cdebdd92fecb1
2015-09-21 17:19:40 -07:00
Zhenzan Zhou fa78c36f93 Change to use tempest plugin framework
Tempest plugin framework provides more flexibility for projects.
With this plugin, it's not requiring the tests live in the tempest
tree.

Change-Id: I8681140d02926b4b3e6af84b8f03b9385e62cc72
2015-09-21 15:29:12 +08:00
Rui Chen 8f7932cfdf Using oslo to generate congress.conf.sample
congress.conf.sample is out of date, some important options don't
present, like: api_workers, and some option name are wrong, like:
datasource_drivers

We should use oslo-config-generator to generate all the options
automatically.

Change-Id: Id898840667116278c55e4a7568cf80497db4833f
Closes-Bug: #1488405
2015-08-27 19:05:59 +08:00
Victor Ryzhenkin 6507ab75be Enable Murano in congress libs
During migration to YAQL 1.0 Murano was broken and as a consequence,
was broken any installation of devstack with Murano.
Now, migration successfully finished and a new python-muranoclient
released.
Murano dsvm jobs is green now.
This patch enables back Murano drivers in Congress.

Change-Id: I1417e6f71bb61e7c64195591ca3333950bd64a15
2015-08-26 04:10:55 +03:00
Tim Hinrichs 90e6379266 Disable remaining datasource-specific tempest tests
Tempest tests are still failing non-deterministically.  This patch
disables all those tests that are dependent on external services.

Change-Id: Id3a2ed263cfb2b97365775e619009a77fdbf2167
2015-08-25 07:40:35 -07:00
Tim Hinrichs 5b12e253b4 Fix import error in keystone tempest test
Import error was created by patch that disabled keystone tests

Change-Id: Icf1e092ab385dfffcc1ba2bd75354efbbb4b4ce1
2015-08-24 16:13:36 -07:00
Tim Hinrichs 79b15b0b22 Disabling more tempest tests
Gate broke again because of a Keystone dependency

Change-Id: Ia196bf6a0f46223e84986ac5ca32fb23325aac47
2015-08-24 13:58:19 -07:00
Tim Hinrichs 8eff132ee3 Temporarily disable Murano
The client does not load, so we are disabling it until the fix is in.

Change-Id: I7b1938e4f4a121bdbb61008b95b25a1a5e4b521a
2015-08-24 13:58:18 -07:00
Tim Hinrichs c2d6f1b79e Disable flakey tempest tests
And lengthen timeouts for others

Change-Id: If7922fcf014ba4cbe80ec4c61fd398d4f3eb4c3c
2015-08-20 08:06:21 -07:00
Tim Hinrichs e5f4cac233 Partially revert tempest/devstack changes
Partially reverts 377b8c7284

This commit made some seemingly innocuous changes to the
devstack script, but now devstack is failing to start in the gate.

So we revert the devstack changes and work from there.  (But
we keep the tempest changes.)

Change-Id: Idc3f4978bc04054e6b308ddc040e89eace5639df
2015-08-18 09:19:29 -07:00
Zhenzan Zhou 30a450a732 remove congressclient and keystoneclient from ha test cases
Per tempest commandment: [T102] Cannot import OpenStack
python clients in tempest/api & tempest/scenario, we cannot
use any openstack client in tempest code. As restclient queries
catalog to get policy endpoint, we have to create replica policy
service and endpoints so we can start replica congress server and
talk with it via restclient.

Change-Id: Icaac65d5f51ef3214c02fe283b1b643f44d554c2
Depends-On: If59fee2891b5902d92c72e62f3ea979a26201b2c
2015-08-12 23:25:25 +00:00
VeenaSL 93ffc7bb69 Replace basestring with six.string_types
"basestring" type is not supported in python3
changing it to six.string_types to make congress py3 compatible

Change-Id: I4bdf32ad19ac50a46a3a7f973e8799dc893126bc
Partially-Implements: blueprint support-python3
2015-07-29 17:17:32 +05:30
Tim Hinrichs 377b8c7284 Enable tempest tests to run in virtualenv
Our tempest tests couldn't run in the gate because they were
importing python-congressclient, and tempest didn't have
python-congressclient as a dependency.

This change copies the python-congressclient logic
into contrib/tempest/tempest/services/policy/policy_client.py
and tweaks it to work with the standard Keystone HTTP
client.

This approach means manually maintaining separate
copies of the python-congressclient logic.  An alternative
is to refactor the python-congressclient so that during
the devstack install, the appropriate code can by copied
into the tempest directory.  This would of course violate
a tempest commandment: [T102] Cannot import OpenStack
python clients in tempest/api & tempest/scenario.

Also cleaned up some devstack contribution oddities.

Change-Id: I0300706c94984bfb5872596c6c65c777b6b362e0
2015-07-27 07:25:11 -07:00
Jenkins 8ad372424b Merge "Acknowledge PIP_UPGRADE for third-party install" 2015-07-06 21:03:12 +00:00
Zhenzan Zhou 77ae0cca96 Fix some tempest failures
- keystone wont return columns which are not set
- flavor_client removed list_flavors_with_detail

Change-Id: I7b114592499876198bc81cc20a81722885520c9b
2015-07-03 10:55:09 +08:00
Lianhao Lu c6abb4645e Acknowledge PIP_UPGRADE for third-party install
Change-Id: Ifde02c0d1d4e8c2f84d61880a1a90cc5bc4a2741
Closes-Bug: #1450540
2015-07-01 11:26:28 +08:00
Zhenzan Zhou 55ff8e860b Fix tempest failures
- The cls.admin_credentials() is gone. We can use
  cls.admin_manager.auth_provider.credentials.
- Glance client now uses list_images() not image_list().
- Fake datasource must provide fake config values
- Using Popen.terminate() will block at Popen.wait(), no idea why yet.
  Changed to Popen.kill()
- Force a refresh and sleep 1s to cleanup old neutron data in tables

Also update README.rst to explain listing available test cases and
how to debug a test case.

Change-Id: I328090bbc3ea2a6be26178cc2d585fe54266eaf7
2015-06-26 16:53:46 +08:00
Jenkins d862ffb720 Merge "Add datasource action API for action-execution-interface" 2015-05-15 21:09:33 +00:00
Jenkins 3b5d590a3b Merge "Remove policy_path config from devstack" 2015-05-15 21:08:04 +00:00
Jenkins 7de574bba7 Merge "Add tempest test for reactive enforcement" 2015-05-15 18:28:37 +00:00
Jenkins 4bf47196dc Merge "Set unique object ids in data source tables' table" 2015-05-13 19:35:34 +00:00
Steven Tran c8ebd14887 Add tempest test for reactive enforcement
In the tempest test, nova.servers.set_meta() is called once the
reactive enforcement is triggered. And since 'p(x)' from
'execute[p(x)] :- q(x)' doesn't take optional/named arguments,
nova-driver must implement a wrapper for servers.set_metta() to
convert positional args to optional args.

Change-Id: Ic92fbc02db5f1564bc7ba348ef2c718cb01d5399
2015-05-12 14:14:56 -07:00
Steven Tran d91ec5f488 Add datasource action API for action-execution-interface
The changes add additional API to execute an action on a specified
service, e.g. POST v1/data-sources/nova?action=execute
{'name': 'disconnect',
 'args': {'positional: ['vm123'],
          'named': {'key1': 'value1'}}

Implements: blueprint action-execution-interface

Change-Id: Ie220f4ea7739548e5f6d6855bc03c81ca4f818f4
2015-05-12 13:32:46 -07:00
Janet Yu 4c6823921d Set unique object ids in data source tables' table
The Horizon Column class caches objects by id. The ids of the data source
tables are not unique across data sources. When two data sources have a table
with the same id, this causes the cached value of the first object to be
used for the second object. The same value is then always shown in that column
for those two rows in the Data Sources page's DataTable. Fix that by setting a
unique id for each data source table object and storing the actual table id
under another key. Similarly for policy tables on that page.

Change-Id: I6f8a7f05ed9f22013cf9690e89ddac1c1624d920
Closes-Bug: #1413726
2015-04-29 15:12:44 -07:00
Steven Tran 755d9fc5ec Fix stevedore package conflict in devstack script
When installing python-muranoclient during devstack setup,
the dependent package stevedore is upgraded to 1.4.0 and it
conflicts with versions specified in global-requirements
causing heat failure. This change removes the "-U" from
"pip install" to skip installing a package if it exists
(as in the case of stevedore=1.3.0).

Closes-Bug: #1450010
Change-Id: Ia0fe33d66f7012391d54e28a804eb7540de323d4
2015-04-29 14:30:55 -07:00
Alexander Yip 4521d5eb1f Fix imports in tempest test
Change-Id: I126dda58943ab6b09e31479ccdeadd9afb349ba3
2015-04-28 14:01:27 -07:00
Alexander Yip ea29a29985 Disable test_murano tempest test since it fails
Change-Id: I4e3a808d52af0a4ac6348eaaf026d41d69761d58
2015-04-28 14:01:26 -07:00
Alexander Yip 79d569cb24 Fetch neutron data for each comparison with Congress
The previous version would fetch neutron data once before repeatedly
checking the Congress table for equivalent data.  This causes a race
condition because the data can change over time.  For example, port
status starts off as BUILD and later changes to ACTIVE.  If the test
first samples neutron and finds that the status is BUILD, the test
will wait until the status becomes BUILD; however, the status may have
already changed to ACTIVE and never change back to BUILD.  This causes
test failures.

Change-Id: Ia46c3cee3c1d62d33578c46693480219db068563
2015-04-28 14:01:22 -07:00
Tim Hinrichs 17b93c53ad Remove policy_path config from devstack
policy_path is no longer used by Congress, so this change removes it from the
devstack install.

Change-Id: I5c8b9df086ff170cb272a399d7f575ba99571b1f
2015-04-23 11:38:03 -07:00
Amey Bhide aa57fc7fca Change stackforge references to openstack
README and prepare_devstack.sh were using stackforge/congress. However,
with Congress now being part of Openstack this needs to be updated

Change-Id: I26aa9c5b15a695ffe12cfbea89593cc2342bf4fd
2015-04-21 13:39:17 -07:00
Janet Yu f7226f2b65 Create rule in a policy via Horizon
Add form to Policy Details page that lets user create a new rule in the policy.
Update Horizon setup in devstack installation script to install JavaScript and
CSS files used in Policies panel.

* congress.py: Rename SERVICE_TABLE_SEPARATOR to more general TABLE_SEPARATOR.
  New API functions to create rule and more ways to get data source's schema.

datasources/
* utils.py: Data source related helper functions.
* views.py: Rename constant.

policies/
* urls.py: New url for rule creation form.
* views.py: Generate lists of all data source tables and columns and add them
  to the template context.

policies/rules/
* tables.py: New button to show rule creation form.
* views.py: New view for rule creation form.
* workflows.py: Steps in rule creation form. Translate user inputs into
  Datalog and send off to the Congress server.

policies/templates/policies/
* detail.html: Change to extend new base file, which includes new static files.
  Store lists of data source tables and columns here for use by child
  templates.

policies/templates/policies/rules/
* _create_conditions.html: Rule creation step where user defines head column
  mapping, join, and negation conditions.
* _create_output.html: Rule creation step where user defines rule metadata plus
  policy table name and columns.
* _mapping_row.html: Template for a row of inputs that defines a head column
  mapping.
* create.html: Rule creation modal window.

static/admin/css/
* policies.css: Custom CSS used in Policies panel.

static/admin/js/
* policies.js: Custom JavaScript used in Policies panel.

templates/admin/
* _scripts.html: Custom JavaScript files used in Admin dashboard.
* base.html: Custom CSS and JavaScript files used in Admin dashboard.

Includes partial implementation of table aliases for self-joins. Does not
include: usage of builtin tables, data preview before submitting rule, policy
table name and column autocompletion in Output step, redisplay of rule creation
form upon failure to create rule, robust input validation.

Partially Implements: blueprint horizon-create-policies

Change-Id: I6ef7e15c34d639f5eb09303077893dbf289347f9
2015-04-14 12:11:29 -07:00
Jenkins 2714a4c0a8 Merge "Modified predeployment example and added tempest test" 2015-04-14 18:47:56 +00:00
Jenkins 672a4d0942 Merge "Added DataSources status table" 2015-04-14 18:23:15 +00:00
Rajdeep Dua a61be082e2 Added DataSources status table
Change-Id: Ic688e5a8e096c55233cce74ee611eb0657fd04ab
2015-04-13 22:20:28 +05:30
Jenkins 7f6fb8a809 Merge "Delete rule from a policy via Horizon" 2015-04-11 03:37:04 +00:00
Jenkins 0179318bc1 Merge "Add comma missing from list of data source drivers" 2015-04-10 03:02:47 +00:00
Jenkins 79401348e3 Merge "Fix here-document usage" 2015-04-10 03:01:15 +00:00
Janet Yu 6f5c27e91a Add comma missing from list of data source drivers
Missing comma from devstack script is making congress erroneously import a
module named IronicDrivercongress.tests.fake_datasource.

Change-Id: I89c211705326026aaa6931fae072cd9c123b58f0
2015-04-09 16:32:22 -07:00
Janet Yu 84061cf945 Fix here-document usage
Use tabs instead of whitespace to indent lines of the here-document. Tabs
indent the text properly in the shell script and are omitted from the output.
Otherwise, running the shell script produces this error:

./prepare_devstack.sh: line 30: warning: here-document at line 21 delimited by
end-of-file (wanted `EOF')
./prepare_devstack.sh: line 31: syntax error: unexpected end of file

Change-Id: I893cd43dfbebd751b0ad5fb3ffff188c40fc862e
2015-04-09 16:09:48 -07:00
Janet Yu b065033cc0 Delete rule from a policy via Horizon
* congress.py: New API function to delete a rule from a policy.

policies/rules/
* tables.py: Add new button to delete a rule from a policy.

Partially Implements: blueprint horizon-create-policies

Change-Id: I1b84c3e0f2562cc2a64c431f6ccf98745a8667bb
2015-04-09 00:31:12 -07:00