Changelog
0.15.1
Bug Fix in comms_lxd
0.15.0
Added comms_lxd to rcc to manage creating a PyLXD client for a service and method and executing sent params on an LXD Host.
Created a default response structure to ensure all responses from cloudcix.rcc are the same.
0.14.3
Added ip_address_group endpoint to
IAAS
application.
0.14.2
Minor bugfixing
0.14.1
- comms_ssh and local_ssh resposne returns a dictionary with the following keys:
- “channel_code”: Integer representing if suuccessful connection was made.
200: Channel Connection suuccessful
400: Error raised during the validation of sent parameters
= 404: Error raised when attempting to establish connection
“channel_message”: String representing if connection to host was successful.
“channel_error”: Optional string representing the error raised validating a sent parameter.
“payload_code”: Optional integer
“payload_message”: Optional string
“payload_error”: Optional string
0.14.0
- In cloudcix.rcc renamed:
deploy_ssh to comms_ssh
deply_lsh to comms_lsh
- comms_ssh and comms_lsh returns a tuple with the following:
Integer representing the Linux exit code of the payload
String representing the stdout of the payload
String representing the stderr of the payload
0.13.16
Removed the following endpoints from the
IaaS
Application - ipmi - pool_ip
0.13.15
Updated documentation for CLOUDCIX_API_URL
0.13.14
Added exclusion endpoint to
Contact
application.
0.13.13
Added source_group_summary endpoint to
Plot
application.
0.13.12
Added source_summary endpoint to
Plot
application.
0.13.11
Added alert endpoint to
Plot
application.
0.13.10
Added lsh (local shell) to rcc.
0.13.9
Added main_firewall_rules endpoint to
PAT
application.
0.13.8
Added question and question_set endpoints to
Contact
application.
0.13.7
Added galaxy endpoint to
PAT
application.
0.13.6
Added source_share endpoint to
Plot
application.
0.13.5
Added region_storage_type endpoint to
IAAS
application.
0.13.4
Added unit endpoint to
Plot
application.
0.13.3
Added a new appliction,
Plot
. This application will manage historical measurements of data. -cloudcix.api.Plot
0.13.2
Removed the following endpoints from the
Contact
Application - activity - activity_type - campaign_activity
0.13.1
Add embeddings endpoint to
Contact
Application
0.13.0
Removed Primitives
0.12.12
Add api_key endpoint to
Membership
Application
0.12.11
Add answer and summary endpoints to
Contact
Application
0.12.10
Minor bugfixing
0.12.9
activity endpoint in the Contact service requires
activity_type_id
to be sent in the request.
0.12.8
The following Contact service endpoints now require
chatbot_name
to be sent in the request: - auth - conversation - q_and_a
0.12.7
Minor bugfixing
0.12.6
Minor bugfixing
0.12.5
Fixed the following endpoints in the Contact service - corpus
requires chatbot_id as a parameter
q_and_a - requires conversation_id as a parameter
0.12.4
Add primitives for managing Ceph Drives:
primitives.kvm.ceph
0.12.3
cloudcix.primitives.utils.check_template_data
now requires a Jinja templateMinor bugfixing
0.12.2
Minor bugfixing
0.12.1
Minor bugfixing
0.12.0
Add new service Primitives - These are the basic programs to instantiate hardware and virtual instances like
podnet -
firewall_global
-firewall_namespace
-network_global
-subnet_bridge
-vpns2s
kvm
hyperv
It can be used in the following way -
from cloudcix.primitives import firewall_global
0.10.8
The endpoint
embedding
was renamedembedding_use
in NLP
0.10.7
Created module
cloudcix.rcc.exceptions
0.10.6
Added
ceph
service toIAAS
- The service allows a User to manage a Ceph Block DeviceAdded
attach
anddetach
services toIAAS
- These services allow a User to manage links between Resources they own, e.g. connecting a Ceph Block Device to a VMRemoved the following endpoints from the
Contact
Application -corpus_data
No longer required as there was a one-to-one relatonship between
chatbot
andcorpus
The
corpus
endpoint will now mange the public resources of the Chatbot instead ofcorpus_data
reference
- References are managed by theq_and_a
endpoint.
0.10.5
Minor bugfixing
0.10.4
Update documentation for new Applications added to SDK
0.10.3
Add auth endpoint to
Contact
Application
0.10.2
Add psycopg2-binary to requirements
0.10.1
Minor bugfixing
0.10.0
Added a new appliction, NLP (Natural Language Processing) -
cloudcix.api.NLP
The following endpoints were added in NLP - Added
embedding
Added a new application, DCIM (Data center infrastructure management). This will result in the deprectaion of the Circuit Application. -
cloudcix.api.DCIM
Added a new appliction, Contact. This will extend Contacts (to be deprecated) by implementing services for Members to manage their own CloudCIX Chatbot. -
cloudcix.api.Contact
Added a new utility package, RCC (Reliable Communication Connection), that can manage clients for running commands on remote hosts and reading their output without data loss. SSH is the first client to be supported. -
cloudcix.rcc.ssh.deploy_ssh
0.9.7
Add lock service to cloudcix SDK. It can be used in the following way -
from cloudcix.lock import ResourceLock
-with ResourceLock(target='', requestor=''): # critical section goes here
- Required Settings are
CLOUDCIX_LOCK_HOST
: Container Name / IP / URL of pgsqllocks instanceCLOUDCIX_LOCK_PORT
: Port to access pgsqlinstance as a stringCLOUDCIX_LOCK_USER
: User to access pgsqllocks instanceCLOUDCIX_LOCK_CREDENTIALS
: Credentials to access pgsqllocks instance
0.9.6
Add property_value endpoint to
Circuit
Application
0.9.5
Upgraded the
Circuit
Application to Python3 for Circuit Management
0.9.4
Add device and device_type endpoints to
IAAS
Application
0.9.1
Add PAT Application
Add capacity endpoint to
IAAS
ApplicationAdd franchise_logic endpoint to
Membership
ApplicationAdd public_key endpoint to
Membership
Application
0.9.0
Upgraded the Helpdesk appliction to Python3 and renamed Support -
cloudcix.api.Helpdesk
->cloudcix.api.Support
- The following endpoints in Support were updated
Changed
item_part_used
topart_used
Removed
ticket_type_question
0.8.26
Add cloud_budget endpoint to Membership Application
0.8.25
Minor bugfixes
0.8.24
Minor bugfixes
0.8.23
Add snapshot_history, backup and backup_history endpoints to
IAAS
Application
0.8.22
Add snapshot_tree endpoint to
IAAS
Application
0.8.21
Add cloud_bill endpoint to
Financial
Application
0.8.20
Add snapshot endpoint to
IAAS
Application
0.8.19
Add vpn_status endpoint to
IAAS
Application
0.8.18
Add sales_analysis, purchases_analysis, and purchases_by_territory endpoints to Financial
0.8.17
Upgraded the
IAAS
Application to Python3 for IP Management and Cloud Management
0.8.16
Updated app_manager urls to use python3 API
0.8.15
Added
email_confirmation
feature to Membership Application. When a user account is created or a user’s email is changed, they will be sent an email to confirm the request.
0.8.14
Added
verbose_address
endpoint to Membership Application
0.8.13
- Added OTP Applicaion and the following endpoints
otp
- Save OTP email and secretotp_auth
- Authenticate sent OTP and email for secret stored.
0.8.12
Added
run_robot
endpoint toIAAS
Application
0.8.11
- Added the following features to
IAAS
Application Added
vpn_history
service to record when a VPN Tunnel is built, deleted and it’s TypeUpgraded
vm_history
service to record quantity and SKUs of VM componentsAdded
customer_subnets
to thevpntunnel
service
- Added the following features to
0.8.10
Added
cash_purchase_receipt
,cash_purchase_refund
,cash_sale_receipt
andcash_sale_refund
to the Financial Application
0.8.9
Minor bugfixing
0.8.8
- Upgraded the Scheduler Application to Python3 and the following endpoints have been updated:
Removed execute_task endpoint from the Scheduler Application
Added Vault Application to CloudCIX API.
Updated the urls for all contra transaction services in the Financial Application. API calls to methods involving contra transactions now require a
source_id
keyword argument.Added
vat3
,rtd
, andstatement
services to the Financial ApplicationAdded
policy_log
service to theIAAS
Application
0.8.7
Minor bugfixes
0.8.6
Minor bugfixing
0.8.5
- Upgraded the Financial application to Python3 and the following endpoints have been updated
Changed
business_logic
tostatement_settings
Changed
debtor_account_statement_log
tostatement_log
Changed
creditor_ledger_transaction_contra
tocreditor_ledger_contra_transaction
Changed
debtor_ledger_transaction_contra
todebtor_ledger_contra_transaction
Changed
nominal_account
toglobal_nominal_account
Changed
nominal_ledger_balance_sheet
tobalance_sheet
Changed
nominal_ledger_profit_loss
toprofit_and_loss
Changed
nominal_ledger_purchases_by_country
topurchases_by_country
Changed
nominal_ledger_sales_by_country
tosales_by_country
Changed
nominal_ledger_trial_balance
totrial_balance
Changed
nominal_ledger_vies_purchases
tovies_purchases
Changed
nominal_ledger_vies_sales
tovies_sales
Added
credit_limit
endpoint to the Financial ApplicationAdded
sales_by_territory
endpoint to the Financial ApplicationRemoved
creditor_account_statement_log
endpoint from the Financial Application
0.8.4
Minor bugfixing
0.8.3
Added the
get_token
method tocloudcix.auth
to allow for creation of tokens for users other than the specified admin user from the settings.Updated Examples page in Documentation
0.8.2
Fixed another minor bug related to tracer
0.8.1
Fixed bug caused by the introduction of the
span
parameter
0.8.0
cloudcix.client.Client
request methods now take an optionalspan
parameter.This should be an instance of an
opentracing
spanIf the client finds this keyword argument, it will automatically inject the span headers into the request, enabling cross application tracing
0.7.20
Added
purchase_order
toSCM
0.7.19
Added
sales_order
toSCM
0.7.18
Added
agreed_price
toSCM
0.7.17
- Removed checking if the Membership application is running in Python2 or Python3 as the Python3 version has been deployed in every environment
This should lead to a speed improvement within the library
Changed
Financial.nominal_ledger_VIES_purchases
toFinancial.nominal_ledger_vies_purchases
to be pep8 compliantChanged
Financial.nominal_ledger_VIES_sales
toFinancial.nominal_ledger_vies_sales
to be pep8 compliant
0.7.16
Minor bugfixes
0.7.15
Minor bugfixes
0.7.14
Minor bugfixes
0.7.13
Minor bugfixes
0.7.12
Added
storage_type
: list of Storage Type options for a VMAdded
storage
: list of Storages in a VM
0.7.11
Removed
Membership.timezone
as it was only a wrapper aroundpytz
and has been removed from the API.
0.7.10
Minor bugfixes
0.7.9
Added
ike
: list of IKE security options for vpntunnelAdded
ipsec
: list of IpSec security options for vpntunnel
0.7.8
Fixed issues regarding importing of the
cloudcix.client.Client
classAdded documentation about more parts of the library
Started an examples file to show more examples of using the library
0.7.7
Fixed an issue with documentation, where the client reference file was not being rendered properly
0.7.6
Fixed a syntax error in the library for Python version 3.4
0.7.5
- Removed keystone as a requirement
We’re moving away from using keystone in the Python3 API and as such all keystone imports and utilities have been removed from the lib
0.7.4
Fixed a bug when importing
api
Renamed
cloudcix.api.Membership.login
tocloudcix.api.Membership.token
to generalise the service name in case extensions need to be made
0.7.3
Added
cloudcix.auth.get_admin_token()
which generates an auth token using the admin credentials in the SETTINGS moduleAdded
cloudcix.api.Membership.login
which allows a general creation of auth tokens using the Membership api
0.7.2
- Changed Client URLs in the
Membership
class to use the Python3 urls instead of calling.lower()
on the Python2 ones Client still has to call
.lower()
for now though
- Changed Client URLs in the
0.7.1
Added
Client.get_all
method which takes in similar parameters toClient.list
but returns all the items from the API given those parameters
0.7.0
- Changed URL parameters to match the new format
i.e.
idMember
becamemember_id
- Added
CLOUDCIX_API_V2_URL
setting to handle the different URL patterns between old and new API URL patterns This is temporary and will be removed when all applications have been ported to Python3
- Added
0.5.6
More fixes to make it work in the Py3 API
0.5.5
Fixed issue where settings was being subscripted when it shouldn’t have been
0.5.4
Unpinned some versions of required libraries
0.5.3
Removed positional decorators that are no longer needed
0.5.2
Removed unnecessary requirements such as Django and coverage
0.5.1
Added preparatory URL handling for the Python3 API handling
- Added a
CLOUDCIX_API_VERSION
setting that tells the system which version of the API you want to use Defaults to version 1
Version 2 tries to use the Python3 API and if that doesn’t work it falls back to the Python2 API instead
- Added a
0.5.0
- Renamed all of the applications to follow PEP8 Class naming rules;
cloudcix.api.app_manager
->cloudcix.api.AppManager
cloudcix.api.asset
->cloudcix.api.Asset
cloudcix.api.circuit
->cloudcix.api.Circuit
cloudcix.api.contacts
->cloudcix.api.Contacts
cloudcix.api.financial
->cloudcix.api.Financial
cloudcix.api.helpdesk
->cloudcix.api.Helpdesk
cloudcix.api.iaas
->cloudcix.api.IAAS
cloudcix.api.membership
->cloudcix.api.Membership
cloudcix.api.reporting
->cloudcix.api.Reporting
cloudcix.api.repository
->cloudcix.api.Repository
cloudcix.api.scheduler
->cloudcix.api.Scheduler
cloudcix.api.scm
->cloudcix.api.SCM
cloudcix.api.security
->cloudcix.api.Security
cloudcix.api.training
->cloudcix.api.Training
0.4.14
Changed an incorrect URL for one of the Client instances
0.4.13
Changed an incorrect URL for one of the Client instances
0.4.12
Fixed an issue arising from an incorrectly named variable when sending requests
0.4.11
Fixed an issue with url parsing in one of the Client instances
0.4.10
Fixed an issue with an invalid kwarg in the creation of a Client object
0.4.9
Minor bugfixes
0.4.8
Fixed an issue where some IP addresses were getting parsed into
datetime.datetime
instances when calling.json()
on a Client’s response object
0.4.7
Minor bugfixes
0.4.6
Added
cloudcix.utils.get_admin_client
method which generates akeystoneclient.v3.Client
instance authenticated with the user details provided in the settings file.
0.4.5
Returned the
cloudcix.auth.CloudCIXAuthMethod
andcloudcix.auth.CloudCIXAuth
classes as they were needed in some legacy code. These might be deprecated again soon.
0.4.4
Fixed a small issue regarding imports.
0.4.3
Renamed
virtualrouter
tovrf
.Removed
nat
as it has been depracted.Removed
vm_ipaddress
as it has been depracated.
0.4.2
Fixed a rarely occurring issue in the JSONDecoder regarding kwargs.
0.4.1
Added ip_validator: Lists properties of an IP Address.
0.4.0
cloudcix
now completely works in Python3.Changed
CLOUDCIX_API_ID_MEMBER
toCLOUDCIX_API_KEY
in the settings.Wrote all new documentation with in depth reference and examples.
Deprecated Python2 support. Move to Python3 and
cloudcix>=0.4.0
to receive the latest module and api methods.