Commit Graph

54 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
Ghanshyam Mann 49217bcec2 [ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.

Congress is ready with python 3 and ok to drop the
python 2.7 support.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Depends-On: https://review.opendev.org/#/c/693631/
Change-Id: I23fcb01265b734c0a87f5ad81b25a1eac179eb06
2019-11-16 14:33:11 +00:00
akhiljain23 4b0075ce16 Switch python3 versions of test jobs to match Train PTI
In Train, we will use python 3.6 and 3.7 for python3 runtime
in our gate jobs [1]. This commit also adds python 3.7.

[1] https://governance.openstack.org/tc/reference/runtimes/train.html

Change-Id: Ib60a6fb08590e5a90244b7d09bece153f6e4a970
2019-05-10 11:31:01 +05:30
Ghanshyam Mann 8847869b5f Dropping the py35 testing
All the integration testing has been moved to
Bionic now[1] and py3.5 is not tested runtime for
Train or stable/stein[2].

As per below ML thread, we are good to drop the py35
testing now:
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005097.html

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004647.html
[2]
https://governance.openstack.org/tc/reference/runtimes/stein.html
https://governance.openstack.org/tc/reference/runtimes/train.html

Change-Id: Ia9c97eb5b230edbcee8101b9494c1d56fd9b6e78
2019-04-14 19:26:06 +00:00
Eric K 5fdfc7b417 Add python 3.6 to setup.cfg, in line with Stein target
Change-Id: Ide943419048aa7ca6e1e78de75f7d2c5968b75c6
2019-03-14 16:37:24 -07:00
akhiljain23 fd495c6e2f Add tacker datasource driver
This commit adds Tacker driver and unit tests. Which creates
corresponding datasource on service startup and allows congress
to maintain Tacker's VNF and VNFD data via populating data to tables
vnfs and vnfds respectively. Based on which rules
can be created and actions can be executed on tacker service.

Change-Id: I281e8ff508dd066514694419c5aae6a991ab307c
Partially-Implements: blueprint add-tacker-datasource-driver
2019-02-28 07:27:06 +05:30
ZhongShengping e657d29fce Update mailinglist from dev to discuss
openstack-dev was decomissioned this night in https://review.openstack.org/621258
Update openstack-dev to openstack-discuss

Change-Id: I77b9a66a6f315096dd5c9ef3de558839778372d9
2018-12-05 09:44:53 +08:00
akhil e7c13b8ae0 Add framework for congress-status upgrade check
This commit adds the functionality of congress-status CLI for performing
upgrade checks as part of the Stein cycle upgrade-checkers goal.
It only includes a sample check which must be replaced by real checks in
future.

Change-Id: I27204c1c2dce2443eaa18a85144cbc892d61b551
Story: 2003657
Task: 26125
2018-10-19 13:31:25 +00:00
Zuul 51956a4f54 Merge "Expose a get_enforcer method for oslo.policy scripts" 2018-10-18 16:22:59 +00:00
Doug Hellmann 874ff3823f change the dist name to 'openstack-congress'
We are updating all Python projects to publish artifacts to PyPI. The name
"congress" is already taken there by another project, and they have not
responded to our request to claim the name. We therefore need to change
the dist name used to package congress. We have some other projects
publishing using an "openstack-" prefix, so I propose using the name
"openstack-congress". This will not change the imports or anything else
about how the code works, just how it is packaged.

Change-Id: I076a4025c40e71845e62fe1747cb7c33a477ea16
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-10-06 14:26:31 -04:00
Eric K 9388e37b92 Expose a get_enforcer method for oslo.policy scripts
Because we have policy in code, we should be able to use the
oslo.policy CLI scripts to produce sample policy files and render
complete policies based on overrides on disk. This was broken
because Congress did not properly expose the appropriate end point.

This commit exposes a get_enforcer() that substitutes an empty list
in place of arguments passed in through the system.

Based on: https://review.openstack.org/#/c/530828/

Change-Id: Ia5f1f949b2dc97cce4227a8dd6819b4354867b97
Closes-Bug: 1793343
2018-09-25 17:52:58 -07:00
Eric K adabb3b9d5 minor renaming on monasca webhook driver
driver name: monasca_webhook
column names renamed to clarify the top level metric info
is only the first metric attached to the alarm.

Change-Id: I9746e29db36550572f877c65e05509fe1e3bac86
2018-07-26 15:08:53 +00:00
akhiljain23 170d1f3ee3 Adding monasca push driver to receive webhook notifications
Accepts POST webhook notifications [1] at
/v1/data-sources/<data-source-name>/webhook

[1] Expected format:
{'metrics': [{u'id': None,
              u'name': u'load.avg_1_min',
              u'dimensions': {u'hostname': u'openstack-13.local.lan',
                              u'service': u'monitoring'}}],
 'alarm_id': u'2c2fa591-2d49-4568-aa2d-d2882d754e42',
 'state': u'ALARM',
 'alarm_timestamp': 1532333678,
 'tenant_id': u'f0d4ef7886f94108b7e8c85e03e6245b',
 'old_state': u'UNDETERMINED',
 'alarm_description': u'',
 'message': u'Thresholds were exceeded for the sub-alarms: max(load.avg_1_min) > 0.0 with the values: [0.546]',
 'alarm_definition_id': u'1e4c517e-dfa8-4e47-a2a5-2fc795d9f7a9',
 'alarm_name': u'alarmPerHostAj23'}

Partially-Implements: blueprint add-monasca-push-driver
Change-Id: Ib67817c798bb4077e2ba1826e9c9aa85976a64fa
2018-07-26 15:06:04 +00:00
Eric K d10c7db6eb vitrage driver for accepting webhook notifications
Accepts POST webhook notifications [1] at
/v1/data-sources/<data-source-name>/webhook

On alarm activate notification from Vitrage, a new alarm row [2]
is created in Congress vitrage data source service.

On alarm deactivate notification from Vitrage, the corresponding
alarm row is deleted in Congress vitrage data source service.

A retry policy on the sender side would be helpful to avoid
notifications being lost to transient issues
(example from zaqar [3]).

Nonetheless, it is still possible that an alarm deactivate
notification is missed, and an alarm row remains in Congress
indefinitely.

To clean-up these rows, the optional config
'hours_to_keep_alarm' sets the approximate number of hours
before an active alarm row is deleted from Congress.

[1] Expected payload format:
{
  "notification": "vitrage.alarm.activate",
  "payload": {
    "vitrage_id": "2def31e9-6d9f-4c16-b007-893caa806cd4",
    "resource": {
      "vitrage_id": "437f1f4c-ccce-40a4-ac62-1c2f1fd9f6ac",
      "name": "app-1-server-1-jz6qvznkmnif",
      "update_timestamp": "2018-01-22 10:00:34.327142+00:00",
      "vitrage_category": "RESOURCE",
      "vitrage_operational_state": "OK",
      "vitrage_type": "nova.instance",
      "project_id": "8f007e5ba0944e84baa6f2a4f2b5d03a",
      "id": "9b7d93b9-94ec-41e1-9cec-f28d4f8d702c"
    },
    "update_timestamp": "2018-01-22T10:00:34Z",
    "vitrage_category": "ALARM",
    "state": "Active",
    "vitrage_type": "vitrage",
    "vitrage_operational_severity": "WARNING",
    "name": "Instance memory performance degraded"
  }
}
https://docs.openstack.org/vitrage/latest/contributor/notifier-webhook-plugin.html

[2] alarms table schema:
    'name'
    'state'
    'type'
    'operational_severity',
    'vitrage_id'
    'update_timestamp'
    'receive_timestamp'
    'resource_name'
    'resource_id'
    'resource_vitrage_id'
    'resource_project_id'
    'resource_operational_state'
    'resource_type'

[3] https://docs.openstack.org/zaqar/pike/user/notification_delivery_policy.html

Change-Id: I1943cb81eadb1abba9e62d3d886778a09ec63118
2018-07-24 18:09:32 -07:00
Anusha Ramineni 3a182268b9 Follow the new PTI for document build
- Follow new PTI for docs build
- Add sphinxcontrib.apidoc to replace pbr autodoc

REF:
https://governance.openstack.org/tc/reference/project-testing-interface.html
http://lists.openstack.org/pipermail/openstack-dev/2017-December/125710.html
http://lists.openstack.org/pipermail/openstack-dev/2018-March/128594.html

Change-Id: I40ee87cd5c7ff982db2da4de679419fbb94e1f72
2018-04-19 11:21:21 +00:00
Anusha Ramineni 82a708abcf Loads all available drivers by default
This commit loads all datasources drivers by default without the need
of config option. The config option 'drivers' would be deprecated as it
is required to update manually on newly supported drivers for each release
and also error prone.

To disable any of the drivers, can be disabled using the config option
'disabled_drivers'

For example,
disabled_drivers = plexxi, murano

TODO: Support disabled_drivers option to disable the datasource drivers

Partially-Implements blueprint enable-drivers-by-default
Change-Id: I5f9878d07c2e1487f8f14f7cd1948560327d8083
2018-03-27 11:54:10 +05:30
Anusha Ramineni b8b0d31392 Remove intree tempest tests
New project congress-tempest-plugin is created, so removing the intree
tempest tests repo

Implements blueprint split-tempest-plugin
Change-Id: Iab440c040453d0ec6a886bf8a0096b566c9ff10b
2018-02-05 11:27:54 +05:30
Zuul 964c3d4c1f Merge "Agent for configuration file validation" 2018-01-04 21:42:44 +00:00
yatin 1a2c25205b Remove reference of policy.json from setup.cfg
With an effort to move policy in code, review [1]
removed policy.json from congress repo but missed
to remove reference from setup.cfg.
This patch removes the reference from setup.cfg.

[1] https://review.openstack.org/#/c/503167/

Change-Id: I62b14ddc5ccf3f0362a11b0fc773ccd92c325b93
2017-12-07 10:26:41 +05:30
Zuul 4043745bd4 Merge "Move policy into code" 2017-12-06 20:05:25 +00:00
Lance Bragstad 3ac806a41c Move policy into code
This commit registers default policies in code. For the
Register and Document Policy in Code community goal.

bp policy-and-docs-in-code

Closes-Bug: 1724714

Change-Id: I1eea53adc19247d8b982c3e22184e8a1e2fb875c
2017-12-05 11:36:20 -08:00
Valentin Matton 872f1b9419 Agent for configuration file validation
This is the agent part of the blueprint.

Implementation of a datasource that transcribes the content
of configuration files managed by oslo-config in Congress
tables.

The datasource uses a set of agents deployed on the nodes
to access the configuration files.

Change-Id: I56750cfd72ad43d8af123d151f70d1d76568a456
Implements: blueprint configuration-files-validation
Co-Authored-By: Valentin Matton <vmatt.openstack@gmail.com>
Co-Authored-By: Pierre Crégut <pierre.cregut@orange.com>
2017-12-05 18:17:59 +01:00
Nguyen Van Trung 48bd2ca2ee Add default configuration files to data_files
In order to make it simpler to use the default
configuration files when deploying services
from source, the files are added to pbr's
data_files section so that the files are
included in the built wheels and therefore
deployed with the code. Packaging and deployment
tools can then more easily use the default files
if they wish to.

This pattern is already established with similar
files for neutron, designate and glance as has
been mentioned in the related bug report.

Change-Id: I0bbb00b68fb73fe35aeeb06c0690249fd46b646f
Closes-Bug: #1718356
2017-10-31 04:08:49 +00:00
Eric Kao 88e7f5411e Fix sphinx warnings in docstring and re-enable autodoc
Change-Id: I8c99029e0e2a32728b74eafd40ef3924c96401c6
2017-10-13 17:56:16 +00:00
Eric Kao 5e5a02418f Final changes for pike RC1
Because of temporarily very unstable gate so close to RC1 deadline,
aggregating several RC1 targeted changes into one patch to make
deadline.

Included changes:
Temporarily disabled replica tempest test because of instability.

Update URL home-page in documents according to document migration
Author: Luong Anh Tuan <tuanla@vn.fujitsu.com>

Policy library loads only .yaml, .yml
Also skip-continue rather than exit congress on loading failure
(for example because of incorrect format or file system error)

Update auth_url in manual testing script
To work with latest keystone/devstack.

Add sample outputs from manual testing scripts

Add documentation and update release notes for policy library

Add auto-generated config reference
Part of doc-migration work

Closes-Bug: 1706158

Change-Id: If2606739f02418d14251dccc4d3a5f9fe10ca48f
2017-08-10 08:32:51 -07:00
rajat29 51bb08c2ea Enable warning-is-error in doc build
- Fix docstring warnings
- pbr warnerrors is no longer needed.
- pbr audodoc temporarily disabled

Co-authored-By: Nguyen Van Trung <trungnv@vn.fujitsu.com>
Change-Id: I37d5d78fc7895bd112a8555840c6c3b3eb294ad3
2017-07-10 18:50:32 -07:00
Anusha Ramineni 3f943dcbec Update devstack plugin to use new repo
Partially-Implements blueprint enhance-congress-dashboard
Depends-On:I485e528b01656a43f5b766bc76b0bc2619a7ed7a
Change-Id: I568063e031c603ebeffce180ec23c829a28c65e6
2017-05-19 03:43:34 +00:00
Cao Xuan Hoang 31758f5b6e Remove a py34 environment from tox
The gating on python 3.4 is restricted to <= Mitaka. This is due to
the change from Ubuntu Trusty to Xenial, where only python3.5 is
available. There is no need to continue to keep these settings.

Change-Id: Id1bc631d1d301a990ae2618e3d081b9b926e1c55
2017-02-10 08:27:16 +07:00
Rajiv Kumar 29763ff481 Added link to modindex
The documentation build does not generate any module index, thus
added the link to the page. The page
http://docs.openstack.org/developer/congress/py-modindex.html
point to module index.

Change-Id: Iaca2e3d77797243d86cd8d57539a36cb3afce4e0
2017-01-25 15:47:40 +05:30
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
gecong1973 a5013cd398 Add Python 3.5 classifier and venv
Now that there is a passing gate job, we can claim support for
Python 3.5 in the classifier. This patch also adds the convenience py35 venv.

Change-Id: I1020c9f8f7d29b03b0fd460cbc22a0238725ea8e
2016-08-04 01:19:34 +00:00
gecong1973 f072427c4c modify the home-page info with the developer documentation
update home-page info

Change-Id: I93167da3d509acdeccf8b9b3d3b1f90638b95d3d
2016-07-28 15:37:30 +08:00
Tim Hinrichs 200ff8251c Remove version from setup.cfg
Change-Id: I5260f6bfe22e80bd41560bfcb92bf9c9e4590a48
2016-04-07 10:21:26 -07:00
Thomas Goirand b4d05f3c6d Also package congress_tempest_tests
The folder congress_tempest_tests has to be packaged in order for the
Debian packaging CI to work. Otherwise, we get:
ImportError: No module named congress_tempest_tests.plugin
when running templest.

Please allow this distribution specific patch to reach upstream.

Change-Id: If14b5afec201068af7cc6fc903cdf6fa72887c2a
2016-03-25 15:58:26 +01:00
Eric K c90410f904 Fix for broken antlr3 in stand-alone install
Restored and updated the permanent symlinks and updated setup.cfg
to facilitate proper standalone installation of antlr3 w congress.

Change-Id: I7b603bcf3785374d5e83d0e5a98669dbd93d8cd9
2016-03-21 21:40:23 -07:00
Tin Lam c596b89c48 Moved CORS middleware configuration into oslo-config-generator
The default values needed for congress's implementation of cors
middleware have been moved from paste.ini into the configuration
hooks provided by oslo.config. Furthermore, these values have been
added to the default initialization procedure. This ensures
that if a value remains unset in the configuration file, it will
fallback to using sane defaults. It also ensures that an operator
modifying the configuration will be presented with that same
set of defaults.

Change-Id: I2edc24e4d47c4d664dd31c407d46e42fefdb1488
Closes-Bug: #1551836
2016-03-14 10:55:49 -07:00
Anusha Ramineni ec6f93668f Fix keystone tempest test failure
This commit fixes the tempest failure and also updates the version
in setup.cfg

Change-Id: Ie0882db236b0f3f4ba1fd7af8cf2fd42c182ac00
2016-01-15 10:21:35 +05:30
Anusha Ramineni 22afd93efa Keep setup.cfg up-to-date with python versions
Change-Id: Ie2a04891b0c16135e7c01d9c8c74618d4268c2bb
2016-01-06 15:07:49 +05:30
Doug Hellmann 94762abac1 remove python 2.6 trove classifier
OpenStack projects are no longer being tested under Python 2.6, so
remove the trove classifier implying that this project supports 2.6.

Closes-Bug:#1519510
Change-Id: I4207349597abc8d3d05d6d210d35f438534a5997
2016-01-04 01:33:11 +00:00
Tim Hinrichs 592eb291bc Update version to 2.0.1
Change-Id: Ibba9f0f26d5d0dd6ea79d628d52ae06d7dc03cec
2015-10-14 13:55:09 -07:00
Jenkins 934032366e Merge "Replace local copy of dateutil 1.5, use dependency" 2015-09-28 17:09:35 +00:00
Victor Stinner ef58545cf6 Replace local copy of dateutil 1.5, use dependency
Having a local copy of a library is a bad practice. Files are
duplicated on the system, it's harder to update it.

For example, the local copy of dateutil 1.5 is not compatible with
Python 3.

Replace the local copy with a dependency to dateutil, at least the
version 2.4.2. dateutil 2.4.2 is compatible with Python 3.

Partially implements blueprint: support-python3
Change-Id: I366c8004e5eb683b41fec2c31cf4a5afdb48180c
2015-09-23 16:25:52 +02: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
Tim Hinrichs 49020ad2ab Change to semantic versioning
Change-Id: I3aa5e1264ea292c0100099c800309daf35f5c494
2015-06-24 14:45:03 -07:00
Tim Hinrichs d9a2789bf7 Add parser/lexer
These files are generated from congress/datalog/Congress.g,
but (i) they change rarely and so no one remembers to run
make and (ii) they require Java to generate.  So it's
better for end-users and most developers to check the files in
and just have the people changing the grammar remember to
check in the generated files.

Closes-bug: 1387209
Change-Id: Ia315fc28570edfaa7d8b223c46f514fb7e34921e
2015-04-15 11:49:36 -07:00
Aaron Rosen 18f7a0c8a0 Make congress-server --version work
Change-Id: I60cd4176486b137d5beb25b5b32226ff7bb6cec5
2015-03-30 09:58:29 -07:00
Tim Hinrichs 779462f2e8 Rename 'congress/policy' directory to 'congress/datalog'
Change-Id: I3a9d016e9add15107011605a77d888be32d84ca3
2015-02-26 18:31:13 -08:00
Aaron Rosen 9f4563b85d Add persistant store for api
This patch adds the framework necessary for data passed in through
the api to be persisted. This patch leverages alembic which provides
several different interfaces for us to handle schema changes. This patch
also adds the initial schema for the policy_rules table which will hold
policy rule data.

Note: lots of this code was shamelessly stolen from neutron :)

Implements blueprint persistent-storage-for-api

Change-Id: I7c85f94cd4c77703debd51d101f221ec33274346
2014-11-10 22:27:01 +00:00
Tim Hinrichs cbf05b515f Fix to setup.cfg for dateutil
Previously we had not updated setup.cfg to properly install dateutil.
All the tests ran fine, but 'python setup.py install' did not put
dateutil in the proper place, which made the server fail when installed.

Change-Id: Icc468ff41c0d1a70c5dccb9966ce7ed41207c67e
2014-10-24 08:17:30 -07:00