Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
Name: python3-azurectl | Distribution: SUSE Linux Enterprise 15 SP4 |
Version: 3.0.4 | Vendor: openSUSE |
Release: bp154.1.21 | Build date: Mon May 9 11:18:04 2022 |
Group: Development/Languages/Python | Build host: sheep88 |
Size: 480288 | Source RPM: python3-azurectl-3.0.4-bp154.1.21.src.rpm |
Packager: https://bugs.opensuse.org | |
Url: https://github.com/SUSE/azurectl | |
Summary: Command Line Interface to manage Microsoft Azure services |
Management tool for the Microsoft Azure public cloud service. It allows uploading, registering and maintaining OS images for multiple Azure Account Subscriptions.
Apache-2.0
* Fri Sep 21 2018 ms@suse.de - Bump version: 3.0.3 → 3.0.4 * Fri Sep 21 2018 ms@suse.de - Run tox for unit tests in Makefile * Fri Sep 21 2018 ms@suse.de - added tox check target to run flake8 tests * Fri Sep 21 2018 ms@suse.de - Bump version: 3.0.2 → 3.0.3 * Wed Sep 19 2018 ms@suse.de - Added tox python 3.4 target * Wed Sep 19 2018 ms@suse.de - Exit code for --version | --help should be zero * Wed Sep 19 2018 ms@suse.de - Add tox setup for easier development * Wed Sep 12 2018 jmason@suse.de - Update path to publishsettings downloader ... and add an additional note about preselecting the proper subscription. * Wed Aug 09 2017 ms@suse.de - Bump version: 3.0.1 → 3.0.2 * Wed Aug 09 2017 ms@suse.de - Ran osc service localrun format_spec_file Make obs happy with regards to missing Copyright information * Tue Aug 08 2017 ms@suse.de - Add azurectl to pypi * Thu Aug 03 2017 ms@suse.de - Bump version: 3.0.0 → 3.0.1 * Wed Aug 02 2017 sean.marlow@suse.de - Make all imports absolute. Update all explicit relative imports to absolute imports. * Thu Jul 13 2017 ms@suse.de - Refactor handling of request IDs Added unify_id method for request id validation The request id value from the Azure rest api is not consistently of the same type which makes it hard to handle the id if it could be a string or a number. This commit introduce a static method called unify_id which allows us to properly format the id into a common value so that azurectl can consume the information in the same way all over the place. So far unify_id just python formats the information into a string. For the handling of the cloud service request id an explicit conversion into a number is performed in addition to the refactoring code * Wed Jul 12 2017 ms@suse.de - Refactor XZ reading of size bytes Implement a read buffer for XZ decompression. It's required that we can read an exact number of uncompressed bytes from the XZ stream. As the max_length parameter was added to the lzma.decompress() method with python 3.5 for the first time and we have to stay compatible with 3.4 a self written solution to this problem was required * Tue Jul 11 2017 ms@suse.de - Bump version: 2.3.2 → 3.0.0 * Tue Jul 11 2017 ms@suse.de - Refactor XZ uncompressed_size method Use lzma seek in stream instead of calling xz to lookup the uncompressed size. * Fri Jul 07 2017 ms@suse.de - Move azurectl code base and package to python3 * Tue Jun 27 2017 sean.marlow@suse.de - Add requirement for pyOpenSSL. Remove requests and dnspython from requirements. - Requests is indrectly required by azure sdk. - dnspython is not required, build and tests all pass without. * Tue May 09 2017 ms@suse.de - Fixed typo is vs. it * Fri Apr 28 2017 jmason@suse.de - Fixup some github-flavored-markdown style issues * Fri Apr 07 2017 ms@suse.de - Bump version: 2.3.1 → 2.3.2 * Mon Apr 03 2017 ms@suse.de - Be more clear on the reboot type Update code comment explaining why we can't really wait for a soft reboot through the API to complete * Fri Mar 31 2017 ms@suse.de - Follow up fix for vm wait states On reboot no state change can be determined from the API. Thus we define the safe default and wait for the ReadyRole even though the vm might already be in that state before reboot * Tue Mar 21 2017 sean.marlow@suse.de - Fix mutable default values. Default values should not contain mutable objects such as lists. * Tue Mar 21 2017 sean.marlow@suse.de - Remove result not used in tests. * Tue Mar 21 2017 sean.marlow@suse.de - Add azurectl compute vm start. * Wed Mar 15 2017 ms@suse.de - Added azurectl compute vm status Allows to retrieve the current status of the virtual machine. In addition the wait behavior was refactored to actually wait for the vm command to complete. This means waiting for a specific virtual machine status or status change * Wed Mar 15 2017 jmason@suse.de - Add --storage-container arg to global storager cmd The argument '--storage-container' was not defined for the top-level storage command, causing an error when using it. Resolves https://github.com/SUSE/azurectl/issues/215 * Mon Mar 13 2017 sean.marlow@suse.de - Update docs and docstrings to match correct order. Order should be by CRUD and alpha. In delete, show and update compare endpoint names case insensitive. * Fri Mar 10 2017 sean.marlow@suse.de - Add update method to instance endpoint. Add method and cli option to update an existing endpoint on an instance. All args can be changed except the endpoint name. * Fri Mar 03 2017 jmason@suse.de - Updating completion script; generated during build. * Fri Mar 03 2017 jmason@suse.de - Bump version: 2.3.0 → 2.3.1 * Fri Mar 03 2017 jmason@suse.de - Remove redundant/conflicting README instructions * Fri Mar 03 2017 jmason@suse.de - Use absolute imports Relative imports fail when imported from a different scope. * Wed Mar 01 2017 jmason@suse.de - Bump version: 2.2.6 → 2.3.0 * Fri Feb 17 2017 sean.marlow@suse.de - Raise AzureEndpointDelete error instead of Exception. And re-raise error. Use more verbose index name for enumeration. * Thu Feb 16 2017 jmason@suse.de - Add --blob-name argument to `compute data-disk attach` * Thu Feb 16 2017 jmason@suse.de - Create data-disks during attach, as necessary. * Thu Feb 16 2017 jmason@suse.de - Add an error for DataDisk Attach * Thu Feb 16 2017 sean.marlow@suse.de - Use block if statement. Add test to cover list method with no endpoints. * Thu Feb 16 2017 jmason@suse.de - Refactor vhd extension stripping into a function * Thu Feb 16 2017 sean.marlow@suse.de - Fix methods if no endpoints. Azure is returning a None type instead of an empty list if no endpoints exist. Check for None in show and list method. In create method create a new instance of endpoints list if it is None for appending the new endpoint. In delete return an error if the endpoint is not foud in the list or if there are no endpoints. In show endpoint method return from for loop. If endpoint is found return from for loop. Otherwise if loop finishes raise exception, endpoint not found. * Tue Feb 14 2017 jmason@suse.de - Delete single instance with delete_role Each cloud-service created through azurectl has a single deployment which defines the public network configuration for the cloud-service, including a reserved-ip if desired. Each instance (VM) is created with a role, which includes endpoint mapping for the specific instance from the cloud-service. A cloud-service with one instance has one deployment, and one role. A cloud-service with N instances has one deployment, and N roles. Therefore; deleting the deployment is an incorrect action when a single instance is targeted for deletion; the instance's role should be deleted instead. See https://github.com/Azure/azure-sdk-for-python/blob/master/azure-servicemanagement-legacy/azure/servicemanagement/servicemanagementservice.py#L1599 * Mon Jan 30 2017 ms@suse.de - Update help message for resource deallocation Be more clear on what happens with the static ip address on shutdown and the request to deallocate the used resources * Mon Jan 30 2017 ms@suse.de - Added compute vm shutdown command Allows to shut down a virtual machine instance. Also taking into account if the used resources should be deallocated or not. This Fixes #200 * Thu Jan 19 2017 ms@suse.de - Bump version: 2.2.5 → 2.2.6 * Wed Jan 18 2017 sean.marlow@suse.de - Combine request status tests. Test for Failure and confirm both failure message and result exist in resulting dict. * Wed Jan 18 2017 sean.marlow@suse.de - Return disctionary status from request_status. The get_operation_status command from azure SDK is returning an Operation object not a string. Return a dictionary with the result status plus the error message if the request has failed. * Wed Jan 11 2017 ms@suse.de - retry operation status result on failure If the operation status can't be retrieved, try again for several times before raising an error. Fixes #199 * Thu Dec 15 2016 ms@suse.de - Bump version: 2.2.4 → 2.2.5 * Wed Dec 14 2016 jmason@suse.de - Adjust data-disk size for vhd footer Fixes #197 * Wed Dec 14 2016 ms@suse.de - Bump version: 2.2.3 → 2.2.4 * Mon Dec 12 2016 jmason@suse.de - Remove unused arguments. * Mon Dec 12 2016 jmason@suse.de - Only upload vhd metadata on data-disk create The only content in an empty Azure data-disk is the fixed VHD footer, so instead of creating and reading an arbitary-sized empty file, just upload the footer data. * Mon Oct 31 2016 ms@suse.de - Bump version: 2.2.2 → 2.2.3 * Mon Oct 31 2016 ms@suse.de - Tracker commit for bnc#1007751 Fixup non conforming data disk setup * Mon Oct 31 2016 ms@suse.de - Bump version: 2.2.1 → 2.2.2 * Mon Oct 31 2016 ms@suse.de - Append VHD footer to the end of the disk * Sun Oct 30 2016 ms@suse.de - Fixup data disk creation The data disk file must be of the specified size in sparse containing the vhd metadata at the end of the disk. Azure only supports fixed size VHD's * Wed Oct 26 2016 ms@suse.de - Bump version: 2.2.0 → 2.2.1 * Wed Oct 26 2016 ms@suse.de - Add man information about default data disk size * Fri Oct 21 2016 ms@suse.de - Update data-disk manual page The man page for this command was not in line with the current state of the command and its subcommands. This Fixes #193 * Fri Oct 21 2016 ms@suse.de - Add missing data-disk attach subcomand help * Fri Oct 14 2016 ms@suse.de - Update bash completion On make build the bash completion is automatically updated to the latest version. Thus it's not required to keep an up to date version of the file in the git repo. However, it also does not hurt and allows to make use of the latest completion from within a development environment * Thu Oct 13 2016 cole.mickens@suse.de - Bump version: 2.1.1 -> 2.2.0 * Tue Sep 20 2016 cole.mickens@suse.de - add --show-in-gui and --recommended-vm-size to compute image update + tests * Tue Sep 20 2016 cole.mickens@suse.de - Document: storage disk upload skips zero'd blocks * Fri Sep 16 2016 ms@suse.de - Bump version: 2.1.0 → 2.1.1 * Fri Sep 16 2016 ms@suse.de - Tracker commit for package update (bnc#999200) * Fri Sep 16 2016 ms@suse.de - Rebuild bash completion * Fri Sep 16 2016 ms@suse.de - Bump version: 2.0.7 → 2.1.0 * Thu Sep 15 2016 jmason@suse.de - Remove line breaks from manpage source. * Wed Sep 14 2016 ms@suse.de - Fixup command order following CRUD * Wed Sep 14 2016 ms@suse.de - Update reserved_ip manual page Added information about reserved_ip associate and disassociate commands * Wed Sep 14 2016 ms@suse.de - Added compute reserved-ip associate/disassociate * Wed Sep 14 2016 ms@suse.de - Added reserved_ip associate/disassociate methods * Tue Sep 13 2016 ms@suse.de - Fixup unit tests Some unit tests open a network connection and are not correctly patched * Tue Sep 13 2016 ms@suse.de - Fixed setup.cfg WC1 None [pytest] section in setup.cfg files is deprecated, use [tool:pytest] instead. * Tue Sep 13 2016 ms@suse.de - Update install-azure-sdk-from-git Use dev branch by default * Tue Sep 13 2016 ms@suse.de - Fixup version for future module in setup.py The version of the future(s) module was accidentally used * Tue Sep 06 2016 jmason@suse.de - Add to docs * Tue Sep 06 2016 jmason@suse.de - Generate SAS URLs for disk images * Tue Sep 06 2016 jmason@suse.de - Fix missing returns in validation shortcuts * Tue Sep 06 2016 jmason@suse.de - Move date validation out to validation helper * Tue Sep 06 2016 jmason@suse.de - Move SAS permission validation out to validations helper * Fri Aug 26 2016 ms@suse.de - Provide disk name example in help and man page * Fri Aug 26 2016 ms@suse.de - Move from --identifier to --disk-basename option The new option name better describes the expected value * Mon Aug 22 2016 ms@suse.de - Kudos to Steven Edouard https://gist.github.com/sedouard, great gist for creating blank vhd's * Mon Aug 22 2016 ms@suse.de - Add future to travis requirements * Mon Aug 22 2016 ms@suse.de - Refactor compute data-disk create command Really only create a data-disk and do not require an instance Use the attach command to make the created disk available in an instance * Mon Aug 22 2016 ms@suse.de - Refactor data-disk create method The command required an existing instance to create a data disk It should be possible to create and register data disks without immediately attaching them to a running instance. The workflow should be data-disk create followed by data-disk attach * Mon Aug 22 2016 ms@suse.de - Add python future requirement future provides builtins.bytes support needed for creating empty VHD disks of a custom size * Wed Aug 17 2016 jmason@suse.de - Extend scope of documentation to explain how and where customdata ends up * Wed Aug 17 2016 ms@suse.de - Update compute data-disk command * add data-disk attach subcommand attach an existing data disk to the selected virtual machine * Tue Aug 16 2016 ms@suse.de - Added attach method to DataDisk class Allows to attach an existing data disk to an instance * Tue Aug 16 2016 jmason@suse.de - Accept string or file as customdata * Tue Aug 16 2016 jmason@suse.de - MOAR UNDERSCORES * Tue Aug 16 2016 jmason@suse.de - Fix a grammar error in docs * Tue Aug 16 2016 jmason@suse.de - Simplify descriptions WRT base64-encoding of customdata * Mon Aug 15 2016 jmason@suse.de - Fixup flake8 issue * Mon Aug 15 2016 jmason@suse.de - Handle custom data via file or string on vm creation re: https://github.com/SUSE/azurectl/issues/177 Also resolves an issue with double-encoding of customdata - the custom data supplied _should not_ be base64-encoded; this is handled by the API. * Wed Aug 10 2016 ms@suse.de - Update manual page for data-disk command * Wed Aug 10 2016 ms@suse.de - Update compute data-disk command * add data-disk detach subcommand detach a data disk from the selected virtual machine and retain the data disk vhd file * modify data-disk (delete | list | show) subcommands Allow them to work without an instance specification * add data-disk (list | show) attached subcommands Former list and show commands connected to an instance specification * Wed Aug 10 2016 ms@suse.de - Refactor DataDisk class * do not require explicit set_instance method. It should be possible to construct an object of DataDisk without being force to manually run a second initialization method * change behaviour of show and list methods. Those actually list or show information for attached disks. Thus those are renamed to show_attached and list_attached. In addition the former show and list methods now provides information for all registered disks. * change behaviour of delete to allow deletion of the specified disk no matter if that disk is attached to an instance or not * introduce a detach method which allows to detach a data disk from an instance to set it free, for e.g deletion * move default LUN numbers to the Defaults namespace * Wed Aug 10 2016 ms@suse.de - Show error details from docopt if present * Wed Aug 10 2016 rjschwei@suse.de - Clarify the format of the password argument for VM creation in the help message * Fri Jul 22 2016 ms@suse.de - Fixed OS image lookup in VirtualMachine Before we start an instance a check is made if the provided image is reachable by the cloud service. However if the image itself does not (or not yet) exist azurectl runs into an unhandled exception * Thu Jul 21 2016 ms@suse.de - Update manual page for compute vm show * Wed Jul 20 2016 ms@suse.de - Added compute vm show command show detailed information about all virtual machines running in the specified cloud service * Wed Jul 20 2016 ms@suse.de - Added get_properties for cloud_service Retrieves cloud service attributes and all details about instances running in this cloud service * Wed Jul 20 2016 ms@suse.de - Added --wait option for compute vm reboot * Tue Jul 19 2016 ms@suse.de - Added documentation about compute vm reboot * Tue Jul 19 2016 ms@suse.de - Added compute vm reboot command * Tue Jul 19 2016 ms@suse.de - Added VirtualMachine reboot_instance method * Thu Jul 14 2016 ms@suse.de - Update manual pages Added --wait options, fixup various markup issues * Thu Jul 14 2016 ms@suse.de - Added --wait option for async commands Commands which comes back with a request id can be started with the --wait option. This causes the command to block the caller until the request status changes to a success state. There are commands like replication which implements the wait differently because the condition of success for the request is not enough. What exactly the command is waiting for needs to end up in the documentation * Thu Jul 14 2016 ms@suse.de - Async commands are expected to return a request id The storage account update command should return a request id to allow for waiting like it is done with all other async methods returning a request id * Thu Jul 14 2016 ms@suse.de - Refactor use of RequestResult in CliTask's Provide request_wait/request_status methods to be available for any command class inheriting from CliTask and adapt existing command implementations to make use of the methods * Fri Jun 17 2016 ms@suse.de - Update README Fix zypper command for package pre conditions * Tue Jun 14 2016 ms@suse.de - Bump version: 2.0.6 → 2.0.7 * Tue Jun 14 2016 ms@suse.de - Fixed license setup in spec file * Tue Jun 14 2016 ms@suse.de - Bump version: 2.0.5 → 2.0.6 * Mon Jun 13 2016 ms@suse.de - Better message for default config file conflict If a default account configuration file from a former azurectl version was found, an error message explaining the possible options should be displayed * Tue May 24 2016 jmason@suse.de - Bump version: 2.0.4 → 2.0.5 * Tue May 24 2016 jmason@suse.de - Use API lookup instead of DNS entry for cloud service check * Tue May 24 2016 jmason@suse.de - Remove unnecessary blob service mapping blob service name is always the management url, without the 'management.' prefix. * Tue May 24 2016 jmason@suse.de - Bump version: 2.0.3 → 2.0.4 * Tue May 24 2016 jmason@suse.de - Add domain references for new UK regions * Mon May 23 2016 ms@suse.de - Bump version: 2.0.2 → 2.0.3 * Mon May 23 2016 ms@suse.de - Fixed ReservedIp constructor We don't need storage account information here, Fixes #166 * Wed May 18 2016 jmason@suse.de - Bump version: 2.0.1 → 2.0.2 * Wed May 18 2016 jmason@suse.de - Automated update of completion script * Mon May 16 2016 jmason@suse.de - Always parse region name the same way (with the same method) Config#__get_region_option() had its own implementation of choosing a region, which conflicted with Config#get_region_name(), so we dump it and use get_region_name() in both cases. Resolves https://github.com/SUSE/azurectl/issues/160 * Thu May 12 2016 jmason@suse.de 'storage disk delete' uses blob-name argument resolves #163 * Mon May 09 2016 ms@suse.de - Better error message for storage/container config The information for the storage account and container is connected to a region section in the configuration file. This means if azurectl needs to read for example the name of the default storage container name configured for the default- or commandline provided region, it has to first read the region section. If the region section does not exist azurectl provides an error message to the user about the missing region, however the user requested information about the storage container and that could confuse users who do not know how the configuration file is structured. This patch puts together the complete set of information and forms a more clear error message for all data read from a region section in the configuration file * Sun May 08 2016 ms@suse.de - Fixup VirtualMachine and CloudService instances The constructor requested information which is not always needed depending on the called instance methods. Therefore the class requests operational information like container names, region name, etc only when needed but not directly at instance creation time. Fixes #158 * Thu May 05 2016 rjschwei@suse.de - Add the --region global option to the account setup command sequence for clarity + We should assume a user is starting from scratch and has no default region in the configuration at this point * Thu May 05 2016 rjschwei@suse.de - Add a tar target + The option will create a tarball that is suitable for local package builds and does not require a complete functioning development environment for azurectl. For releases the existing build target should be used. * Thu May 05 2016 jmason@suse.de - Allow a region argument to bypass the config file There are specific cases where the region argument is valuable in a function, but not essential to the configuration file. An example is `storage account create`; it's necessary to define the region where the storage account will be placed, but a _specific storage account_ or a _specific container_ is not required (which is what the config provides); only the name of the region. In the event the region name is invalid, it will be reflected in an error raised by the upstream API. * Wed May 04 2016 ms@suse.de - Added missing setup account test processing the account setup if no default configuration exists was not tested * Wed May 04 2016 jmason@suse.de - Bump version: 2.0.0 → 2.0.1 * Wed May 04 2016 jmason@suse.de - Deployment slot is global to the cloud service ... therefore added roles are in the same deployment slot, so add_role doesn't accept this argument. Since we don't offer an option to choose a role (yet), I moved it out of the command code. * Wed May 04 2016 ms@suse.de - Fixup role name on instance creation role_name = instance_name * Tue May 03 2016 jmason@suse.de - Properly reference deployments and roles in data-disk functions. * Tue May 03 2016 ms@suse.de - Added check for reserved_ip on instance creation Reserved IP name can only be assigned on initial deployment * Tue May 03 2016 ms@suse.de - Delete create_reserved_ip_address handling azurectl has an explicit reserved_ip command for this purpose * Tue May 03 2016 ms@suse.de - Check error code from get_deployment_by_name In case of an exception, check if the exception type is a ResourceNotFound error. In any other case raise * Tue May 03 2016 jmason@suse.de - Add missing argument to 'compute endpoint delete' * Tue May 03 2016 jmason@suse.de - Properly reference deployments and roles in endpoint functions. * Tue May 03 2016 jmason@suse.de - Remove deprecated 'compute storage' section from manpage Commands have moved to 'storage disk' and 'storage container' commands, which are already documented. Resolves https://github.com/SUSE/azurectl/issues/149 * Tue May 03 2016 ms@suse.de - Wait for request to complete on reserved_ip setup * Mon May 02 2016 ms@suse.de - Refactor check for deployment * Sun May 01 2016 ms@suse.de - Make name argument mandatory for container create If the container name is optional on create, it is taken from the region section of the config file. However if the config file does not contain a region section it is not possible to create a container. This commit solves the chicken & egg problem. Related to #124 * Sun May 01 2016 ms@suse.de - Update README More detailed information about the account setup Fixes #124 * Sun May 01 2016 ms@suse.de - Fixed deployment label setup on instance creation A deployment label can be specified on initial deployment only * Sun May 01 2016 ms@suse.de - Fixed reserved ip setup on instance creation A reserved IP address name can be specified on initial deployment and requires a create_reserved_ip_address call before. Additional instances in the same deployment cannot be instanciated with a reserved IP address name according to the current add_role implementation. Related to #144 * Sun May 01 2016 ms@suse.de - Fixed instance creation if deployment exists check if the virtual machine deployment already exists. If so any new instance must be created as additional role to the deployment. Only the initial virtual machine instance must be created as a new deployment for the selected cloud service Fixes #144 * Sat Apr 30 2016 ms@suse.de - Update README Information how to build rpm package * Sat Apr 30 2016 ms@suse.de - Configuration file compatibility prior to this release azurectl allowed multiple account sections in one config file. In order to prevent the configuration of duplicate and potentially inconsistent account configurations this patch checks the account sections of an existing default config file for conflicts Fixes #138 * Fri Apr 29 2016 ms@suse.de - Not all operations requires a region setup Follow up fix for 'azurectl --region <name> compute image list' This operation doesn't require storage information from the region. If the region name is given this is enough. Fixes #140 * Fri Apr 29 2016 ms@suse.de - Provide subcommand help as usage information Fixes #139 * Fri Apr 29 2016 ms@suse.de - Update usage information for global options Depending on the selected service different global options are available. This patch categorizes the global option information to be specific for the selected service. Fixes #137 * Fri Apr 29 2016 ms@suse.de - Not all operations requires a region setup azurectl operations like 'storage account list' or 'compute vm types' as well as 'compute vm regions' do not require a region setup in the configuration file. In addition we allow to setup the account with the region setup to be optional but the code always reads in a default region setup. Therefore this commit changes the behaviour to read the region setup only when required and allows for operations without a region setup. This is related to Issue #124 * Fri Apr 29 2016 ms@suse.de - Fixed typo loction -> location * Thu Apr 28 2016 ms@suse.de - Bump version: 1.8.1 → 2.0.0 * Thu Apr 28 2016 ms@suse.de - Prevent double render on usage * Wed Apr 27 2016 jmason@suse.de - Add some scope to the docopts Use the brief descriptions of function scope, WRT Azure, with the docopts as well. Inspired by Robert's request for an explanation of the endpoint commands. * Wed Apr 27 2016 jmason@suse.de - Fix up manpages * Reorder commands and options in manpages to agree with docopts. * Add missing commands/options in manpages and docopts. * Add brief descriptions to manpages explaining the scope of functionality within the Azure framework * Wed Apr 27 2016 jmason@suse.de - Add missing sections to the root manpage * Wed Apr 27 2016 ms@suse.de - Fixed completion generator * Wed Apr 27 2016 jmason@suse.de - Sort subcommands based on the sorting rules. * Wed Apr 27 2016 jmason@suse.de - Add subcommand sorting rules to README. * Wed Apr 27 2016 ms@suse.de - Fixed docopt setup for compute image update Options for the image update command were not part of the usage help * Wed Apr 27 2016 ms@suse.de - Fixed docopt setup for compute image --name Be more consistent what --name is used for in the compute image command * Wed Apr 27 2016 ms@suse.de - Fixed docopt setup for compute image --label Be more clear and consistent in the docopt specification for the --label option in the compute image command * Wed Apr 27 2016 jmason@suse.de - Add an example date format, consistent with other date fields * Tue Apr 26 2016 jmason@suse.de - Add a description for 'compute endpoint' * Tue Apr 26 2016 jmason@suse.de - change --blob arg of 'compute image create' to --blob-name * Tue Apr 26 2016 jmason@suse.de - change --name arg of 'storage disk upload' to --blob-name * Tue Apr 26 2016 jmason@suse.de - Add details on 'container sas' subcommand * Tue Apr 26 2016 ms@suse.de - Provide custom usage message Instead of the docopt way to show the usage information we provide an azurectl specific usage information. The usage data now always consists of * the generic call azurectl [global options] service <command> [<args>] * the command specific usage defined by the docopt string short form by default, long form with -h | --help * the global options * Tue Apr 26 2016 jmason@suse.de - Sort commands and options in docopts alphabetically * Tue Apr 26 2016 jmason@suse.de - Add a date format example * Tue Apr 26 2016 jmason@suse.de - request commands were using a deprecated internal interface. * Mon Apr 18 2016 jmason@suse.de - Use azurectl with a management cert instead of publishsettings A management cert allows the user to define the certificate used for API authentication, instead of one generated by Azure (which is included in the publishsettings file). Since no publishsettings file is available, the other data normally supplied must be explicitly set in the config as well. * Wed Apr 13 2016 ms@suse.de - Update README Update developer documentation for changed API * Wed Apr 13 2016 ms@suse.de - Update README azurectl caller semantic has changed * Tue Apr 12 2016 jmason@suse.de - Remove references to publishsettings in Classes + Consolidate cert file construction and service instantiation in account + ServiceManager is no longer of value + ServiceManager-dependent classes are moved appropriately * Tue Apr 12 2016 ms@suse.de - Move compute storage commands to storage service The subcommands from the compute storage task has been moved to the storage service. The following new commands exists * storage container list, show, create, delete, sas containers * storage share list, create, delete file shares * storage disk upload, delete, blob data, preferably vhd disks References: https://trello.com/c/vQ8nMkW3/138-azurectl-move-compute-storage * Tue Apr 12 2016 ms@suse.de - Update documentation for storage commands The compute storage commands has been moved into the storage namespace. Thus the manual pages needs to follow the change * Tue Apr 12 2016 jmason@suse.de - Add management_url account config attribute ... which precedes publishsettings options * Tue Apr 12 2016 jmason@suse.de - mv StorageAccount to storage.account module * Fri Apr 08 2016 ms@suse.de - Better user experience on command invocation If a command plugin can not be found show a list of possible actions for the selected service * Fri Apr 08 2016 ms@suse.de - Use one source tarball Don't manage completion and man pages in extra source tarballs. The information has been placed into the MANIFEST.in configuration * Fri Apr 08 2016 ms@suse.de - Adapt completion generator Only read source files with docopt information * Fri Apr 08 2016 ms@suse.de - Added MANIFEST.in to describe package sources * Fri Apr 08 2016 ms@suse.de - Refactor management into sub package management/service_manager.py management/endpoint.py management/reserved_ip.py management/request_result.py management/data_disk.py * Fri Apr 08 2016 ms@suse.de - Refactor storage into sub package storage/page_blob.py storage/container.py storage/storage.py * Fri Apr 08 2016 ms@suse.de - Refactor instance into sub package instance/image.py instance/cloud_service.py instance/virtual_machine.py * Fri Apr 08 2016 ms@suse.de - Refactor config into sub package config/parser.py config/file_path.py * Thu Apr 07 2016 ms@suse.de - Refactor accounts into sub package account/setup.py account/service.py account/storage.py * Thu Apr 07 2016 ms@suse.de - Refactor commands into sub package commands/base.py commands/compute_data_disk.py commands/compute_endpoint.py commands/compute_image.py commands/compute_request.py commands/compute_reserved_ip.py commands/compute_shell.py commands/compute_storage.py commands/compute_vm.py commands/setup_account.py commands/storage_account.py * Thu Apr 07 2016 ms@suse.de - Refactor utils into sub package utils/collector.py utils/output.py utils/filetype.py utils/validations.py utils/xz.py * Wed Apr 06 2016 ms@suse.de - Complete deletion of account configuration If an account configuration was deleted which was also setup as the default configuration, the call left with a broken symlink. This is not a problem for azurectl but should be avoided * Wed Apr 06 2016 ms@suse.de - Don't fail account configuration if storage exists * Wed Apr 06 2016 ms@suse.de - Update compute storage man page Added missing/changed information about upload options * Tue Apr 05 2016 ms@suse.de - Refactor ServiceManager base class Any class using ServiceManager as base class requires the presence of a storage account because the constructor of the base class always reads the storage key and name. However the assumption that every azure service management pointer provides access to a storage account is not necessarily true * Tue Apr 05 2016 jmason@suse.de - Make blobname arg optional on `compute storage upload` It's common to use the source filename as the blob filename, and Storage#upload already handled that behavior, but it didn't account for how compressed files are handled automatically. + Make the argument optional in the command line + Properly adjust the filename of compressed files * Tue Apr 05 2016 jmason@suse.de - Add domain suffixes for new Canadian regions * Mon Apr 04 2016 ms@suse.de - Update manual page Information about --create option for account configuration * Mon Apr 04 2016 ms@suse.de - Allow storage/container creation for account setup When configuring a new account setup an optional --create parameter exists which will create the provided storage account and the container as part of the azurectl account configuration References: https://trello.com/c/q09teezP/122-azurectl-better-initial-experience * Fri Apr 01 2016 ms@suse.de - Fixed azure module names Use the module names a pip search returns results for * Fri Apr 01 2016 jmason@suse.de - Flake8 fixes * Fri Apr 01 2016 jmason@suse.de - When waiting for replication to complete, show a progress bar... ... or be --quiet. * Fri Apr 01 2016 ms@suse.de - Allow setup of custom Azure SDK in virtualenv If the pip version of the Azure SDK and the Azure Storage SDK is not suitable for the development tasks we have to manually install the code from git into the virtualenv in order to allow azurectl to make use of this SDK version. This commit adds the helper script .virtualenv.install-azure-sdk which pulls the SUSE SDK fork to the local development tree. * Thu Mar 31 2016 jmason@suse.de - Add argument to wait for replication to complete re: https://github.com/SUSE/azurectl/issues/89 * Thu Mar 31 2016 jmason@suse.de - Add a command to show image replication status re: https://github.com/SUSE/azurectl/issues/89 * Thu Mar 31 2016 ms@suse.de - Update README According to the changed setup account behaviour the documentation needs to be adapted too * Thu Mar 31 2016 ms@suse.de - Man page update Style fixes * Wed Mar 30 2016 ms@suse.de - Update man page for setup account default * Wed Mar 30 2016 ms@suse.de - Refactor account setup default command Instead of making an account section the default a symlink to the specified account configuration file is created References: https://trello.com/c/q09teezP/122-azurectl-better-initial-experience * Wed Mar 30 2016 ms@suse.de - Delete setup account add command Combine this command with the configure command * Wed Mar 30 2016 ms@suse.de - Refactor account setup list command Instead of listing only the information for the default account the command now lists all configuration files and their setup. In addition an information which config file is used by default is part of the output References: https://trello.com/c/q09teezP/122-azurectl-better-initial-experience * Tue Mar 29 2016 ms@suse.de - Update documentation Man page update for changed setup account command * Tue Mar 29 2016 ms@suse.de - Refactor account setup command Instead of managing several accounts in one config file, each account is represented by its own config file. Support for account config files were already in place but the account setup command did not manage accounts as single files. This commit changes the behaviour as follows: setup account add/configure creates a new account configuration file and does not add sections to the existing configuration file setup account remove removes the account configuration file and not the section reference in an existing configuration file References: https://trello.com/c/q09teezP/122-azurectl-better-initial-experience * Tue Mar 29 2016 ms@suse.de - Refactor loading of config file Instead of loading the config file any time a class inherits from CliTask just provide the load_config capability and let any task explicitly load the config file when required. In addition the load_config method creates a new default config file if no config file existed and the user requested the automatic configuration file setup on the commandline References: https://trello.com/c/q09teezP/122-azurectl-better-initial-experience * Tue Mar 29 2016 jmason@suse.de - Add command to list storage account regions * Mon Mar 28 2016 jmason@suse.de - Add a command for listing regions for starting a VM * Mon Mar 28 2016 jmason@suse.de - Make `compute shell` command a bit more convenient * Mon Mar 28 2016 jmason@suse.de - Add commands for managing VM endpoints * Thu Mar 24 2016 jmason@suse.de - Update pre-commit hook for flake8 * Thu Mar 24 2016 jmason@suse.de - Add additional development dependencies to README * Fri Mar 18 2016 ms@suse.de - Update and document virtualenv setup Along with the virtualenv setup the bin/azurectl entry point is no longer required. We get that for free * Fri Mar 18 2016 ms@suse.de - Update documentation Refer to flake8 which covers the whole stack of conventions * Fri Mar 18 2016 ms@suse.de - Cleanup storage account commands listing storage accounts is part of the azurectl storage command. The compute storage subcommand and its help has been deleted In addition the missing 'compute storage share help' command was added. The manual page existed but there was no way to call the help from azurectl itself * Tue Mar 15 2016 toms@suse.de - Prepare Python virtual environment * Use two requirement files for development and normal * Add comment in setup.py's install_requires key * Tue Mar 15 2016 toms@suse.de - Ignore .env/ directory * Tue Mar 15 2016 ms@suse.de - Fixed exclude syntax for flake8 * Tue Mar 15 2016 ms@suse.de - No flake8 on travis for the azure storage sdk * Tue Mar 15 2016 ms@suse.de - No flake8 on travis for the azure sdk * Tue Mar 15 2016 ms@suse.de - Cleanup code according to flake8 checks * Tue Mar 15 2016 ms@suse.de - Switch to flake8 checks flake8 is more accurate and precise in checking the code for e.g unused imports, unused variables and more * Tue Mar 15 2016 ms@suse.de - Move data_disk unit tests to pytest * Tue Mar 15 2016 toms@suse.de - Set x-Bit and add she-bang line * Tue Mar 15 2016 toms@suse.de - Improve setup.cfg with pytest and other settings - Remove obsolete section nosetest (migrated to pytest) - Add section bdist_wheel for wheels support - Add section sdist to create tar.gz archive by default * Tue Mar 15 2016 toms@suse.de - Restore .bumpversion.cfg and setup.cfg Seems setup.cfg was overwritten by .bumpversion.cfg accidently. Restored setup.cfg from commit e0d09e7e019 * Mon Mar 14 2016 jmason@suse.de - Privatize some methods re: https://github.com/SUSE/azurectl/pull/105#discussion_r55975836 * Mon Mar 14 2016 jmason@suse.de - Use upstream method for constructing blob URLs re: https://github.com/SUSE/azurectl/pull/105#discussion_r55976239 * Mon Mar 14 2016 ms@suse.de - Update travis setup for pytest * Mon Mar 14 2016 ms@suse.de - Move from nose to pytest nose is no longer maintained, thus we have to move to another testing system in the long run. This commit updates the make setup to use pytest instead of nose. However all tests needs to be migrated to pytest now and no longer use nose/tools Fixes #102 * Sun Mar 13 2016 ms@suse.de - patch version bump * Sun Mar 13 2016 ms@suse.de - Fixed upload performance issues Revert back to our page uploader and adapt the code to use the pageblobservice code from the latest azure storage sdk * Sun Mar 13 2016 ms@suse.de - Delete custom coverage check Use --cover-min-percentage=100 from testing framework * Fri Mar 11 2016 jmason@suse.de - Add command to list data disks on a VM * Fri Mar 11 2016 jmason@suse.de - Add command for deleting a data disk from a VM. * Fri Mar 11 2016 jmason@suse.de - Add command for showing a data disk * Fri Mar 11 2016 jmason@suse.de - Bump version: 1.8.0 → 1.8.1 * Fri Mar 11 2016 jmason@suse.de - Add bumpversion config * Fri Mar 11 2016 ms@suse.de - Prevent real HTTP connection in unit test storage_account_test::test_update_error did not mock get_storage_account_properties which causes a real network connection in the test * Thu Mar 10 2016 ms@suse.de - Create a uniq disk identifier on vm create When instantiating a new VM, we create a disk file with the name '_instance', in the selected storage container. Since storage files have unique names an additional information is required to allow creation of multiple vm's from the same image in a selected region and container. The naming schema is as follows <cloud-service-name>_instance_<instance-name>_image_<image-name> This fixes #99 * Thu Mar 10 2016 jmason@suse.de - Add test coverage of alternative Container init scenarios * Thu Mar 10 2016 jmason@suse.de - proposed solution to calling Container from StorageAccount * Thu Mar 10 2016 jmason@suse.de - Break an overly long line re: https://github.com/SUSE/azurectl/pull/97#discussion_r55652223 * Wed Mar 09 2016 jmason@suse.de - Alphabetize azurectl exceptions * Wed Mar 09 2016 jmason@suse.de - Inline a large string with dedent instead of breaking indent re: https://github.com/SUSE/azurectl/pull/98#discussion_r55486058 * Wed Mar 09 2016 jmason@suse.de - Add command for creating a data disk re: https://github.com/SUSE/azurectl/issues/103 * Tue Mar 08 2016 jmason@suse.de - Rename AsmObject to ServiceManager re: https://github.com/SUSE/azurectl/pull/97#discussion_r55359763 * Tue Mar 08 2016 jmason@suse.de - Add `compute shell` command -> drops to interactive python * Fri Mar 04 2016 ms@suse.de - Update man page due to updated container options * Fri Mar 04 2016 ms@suse.de - Update option handling for container operations * container show should have the option to specify a container name. * container create should have the container name as option and not as a mandatory information. If not provided the configured container name is used. * container delete should have the container name as mandatory option to let people think before they delete a container and its contents * Fri Mar 04 2016 ms@suse.de - minor version bump * Fri Mar 04 2016 ms@suse.de - Update spec template azurectl has to require the latest version of the azure-storage SDK to support the advanced blob operations * Thu Mar 03 2016 ms@suse.de - Update storage code to match azure storage 0.30.0 * Thu Mar 03 2016 ms@suse.de - Added compute storage container create|delete Allows creation and deletion of containers for the configured storage account * Tue Mar 01 2016 jmason@suse.de - Cleanup stdout printing in tests * Fri Feb 26 2016 jmason@suse.de - Add commands for CRUD of storage accounts TODO: add tests * Fri Feb 26 2016 jmason@suse.de - Add some general docopt validations * Tue Feb 23 2016 jmason@suse.de - Refactor 'reserved_ip' command to 'reserved-ip' ... for consistency with other arguments; rework dynamic loaders to better handle multi-word commands. * Tue Feb 23 2016 jmason@suse.de - Instead of importing , add local camelize method. * Sun Feb 21 2016 jmason@suse.de - semantic version bump * Sat Feb 20 2016 jmason@suse.de - Add reserved_ip support to creation of VMs. * Sat Feb 20 2016 jmason@suse.de - Add manpage for 'reserved_ip' command space. * Sat Feb 20 2016 jmason@suse.de - add 'reserved_ip delete' command * Sat Feb 20 2016 jmason@suse.de - add 'reserved_ip create' command * Fri Feb 19 2016 jmason@suse.de - Add 'reserved_ip show' command * Fri Feb 19 2016 jmason@suse.de - Use an inflection to find task class instead of title() * Fri Feb 19 2016 jmason@suse.de - Foundations: list reserved ips * Thu Feb 18 2016 jmason@suse.de - semantic version bump * Thu Feb 18 2016 jmason@suse.de - Bug in errormsg for VM domains * Thu Feb 18 2016 jmason@suse.de - Add VM domains for disconnected regions * Thu Feb 18 2016 ms@suse.de - Fixed doc/man Makefile Fail if one of the used tools to build the docs is not installed or throws an error * Thu Feb 18 2016 jmason@suse.de - Indentation changes per review comments. * Wed Feb 17 2016 jmason@suse.de - semantic version update * Wed Feb 17 2016 jmason@suse.de - Blob storage in disconnected regions Define the 'host_base' for different azure disconnected regions; derive it from the management url, and pass it along. This enables working with blob storage in disconnect regions. * Wed Feb 17 2016 jmason@suse.de - Use management URL from publishsettings Instead of defaulting to the standard management URL, explicitly send the management URL defined in publishsettings. This enables access to additional endpoints for detached regions. * Fri Feb 12 2016 ms@suse.de - Added python-azure-sdk-storage package requirement Our Azure SDK package has been split into service and storage management. Therefore azurectl has to require both packages * Thu Feb 04 2016 ms@suse.de - Added tests for PageBlob class * Thu Feb 04 2016 ms@suse.de - Update Storage class tests Due to storage upload refactoring the tests needs to follow * Thu Feb 04 2016 ms@suse.de - Complete tests for XZ class * Thu Feb 04 2016 ms@suse.de - Refactor storage upload method Instead of a set of nested while loops a new iterator class called PageBlob has been introduced. This allows to encapsulate the details of a page update in a blob storage and also separates them from the actual upload code * Tue Feb 02 2016 jmason@suse.de - Semantic minor version bump * Tue Feb 02 2016 ms@suse.de - Update spec template to require azure sdk >= 1.0.3 * Tue Feb 02 2016 jmason@suse.de - Allow image upload to retry a block upload multiple times Instead of dying when we have a failure on a single block upload, try more than once. Number of times to try can be passed into the upload function as an argument, so we could, in theory, extend docopt to make this configurable. * Fri Jan 22 2016 ms@suse.de - Make decorator methods real private * Fri Jan 22 2016 ms@suse.de - Allow custom date formats Instead of forcing the user to a specific date format, it is now possible to pass in any format supported by python's date parser. * Fri Jan 22 2016 ms@suse.de - Update os image test data to more realistic values * Thu Jan 21 2016 ms@suse.de - Added date and time format check Make sure any data/time attributes in an os update call uses the Azure API date and time format. Fixes #87 * Thu Jan 21 2016 ms@suse.de - Fixed check for URI based OS image attributes After an update of e.g privacy_uri the API might have changed the value to be still correct but different from the original value provided on the commandline by e.g a slash (/). Fixes #86 * Mon Jan 18 2016 ms@suse.de - Updated unit tests to make travis happy again Travis has changed their pep8 default setup to be more strict. The tests failed if a comparison for a bool value is not done via 'if cond is True:' or 'if cond:'. In azurectl we have used the '==' operator to do the compare. - Updated unit tests to make travis happy again Travis has changed their pep8 default setup to be more strict. The tests failed if a comparison for a bool value is not done via 'if cond is True:' or 'if cond:'. In azurectl we have used the '==' operator to do the compare. * Fri Jan 15 2016 jmason@suse.de - Add command for listing a single image, by name. * Tue Dec 22 2015 ms@suse.de - Update travis SDK branch to master update_os_image_from_image_reference was merged by Microsoft into the SDK master branch. Therefore the travis checks are back on master * Fri Dec 11 2015 ms@suse.de - Update spec file make sure to reference the correct SDK version * Fri Dec 11 2015 ms@suse.de - minor version bump Support for updating OS image data has been added * Fri Dec 11 2015 ms@suse.de - Add missing setuptools dependency to setup.py * Tue Dec 01 2015 ms@suse.de - Update manual page man page data for azurectl compute image update * Tue Nov 24 2015 jmason@suse.de - Add missing dependency * Tue Nov 24 2015 ms@suse.de - Added support for replicating to all regions The option --regions supports the value 'all', this Fixes #77 * Mon Nov 23 2015 ms@suse.de - Added azurectl compute image update Allow to update OS image metadata, also check if updated data was really set. This Fixes #76 * Wed Nov 11 2015 ms@suse.de - minor version bump Azure SDK has our replication/publishing patches in a a different namespace. Thus this version and the dependency to the python-azure-sdk version were adapted * Tue Nov 10 2015 ms@suse.de - update version requirement for legacy service * Wed Nov 04 2015 ms@suse.de - Update module dependencies strictness Instead of requiring an exact version we opened this to match the major version and its releases. This fixes Issue #73 * Wed Nov 04 2015 ms@suse.de - Adaptions to replication/publishing SDK patches My patches to the Azure SDK were accepted, however I had to rename the methods and the class where they live after review by $MS. Thus these changes have an effect on azurectl too * Wed Oct 21 2015 ms@suse.de - minor version bump * Wed Oct 21 2015 ms@suse.de - Editorial review of message texts * Wed Oct 21 2015 ms@suse.de - Editorial review of message texts * Wed Oct 21 2015 ms@suse.de - Use the host DNS resolution setup Instead of directly asking a public DNS server we use the host DNS configuration and assume it's properly configured * Tue Oct 20 2015 ms@suse.de - Editorial review of message texts * Tue Oct 20 2015 ms@suse.de - Editorial review of message texts * Tue Oct 20 2015 ms@suse.de - Added check for region consistency When running an instance of an image the following region constraints must be fulfilled * storage account region and cloud service region matches * image exists in cloud service region This patch adds those checks prior to running an instance and provides useful error messages to the user. This fixes Issue #69 and Issue #68 * Tue Oct 20 2015 ms@suse.de - Added check for cloudservice URL A requested cloud service will be registered as public address in Azure If this address is already in use the service comes back with a message that is not clear to the user how to fix the situation. This patch adds a DNS check prior to creating a new cloud service and provides a better error message to the user. This fixes Issue #67 * Mon Oct 19 2015 ms@suse.de - Update manual page Add information about minimal and mandatory sections in the configuration file * Mon Oct 19 2015 ms@suse.de - Prevent misleading use of template name * Mon Oct 19 2015 ms@suse.de - Update usage message for --account option * Mon Oct 19 2015 ms@suse.de - show all image attributes azurectl compute image list did not show all information * Mon Oct 19 2015 jmason@suse.de - Cascade up the location attribute removal. * Fri Oct 16 2015 ms@suse.de - Update manual pages manual page update due to code refactoring from Issues #60 and #61 * Fri Oct 16 2015 ms@suse.de - Delete config file options storage_accounts and storage_containers are gone from the config file. They were only used for pre validation of specified storage account and container names. This validation is meaningless if the data provided in the config file is not valid compared to the service. In addition the combination of storage account and container was not validated at all. Thus these data was removed from the config file. If an invalid storage account or container or a combination of both is used azurectl will raise an exception with the data we get back from the service. This fixes Issue #61 * Fri Oct 16 2015 ms@suse.de - Refactor account handling Instead of managing multiple account sections in one configuration file we allow to select a configuration file by a template name The former --account parameter specified a section name in a configuration file. With this patch --account specifies a template name for a configuration file with the name ~/.config/azurectl/<template_name>.config Along with this change the options --config and --account are mutually exclusive. --config still allows to specify any filename. The basic structure of the configuration has not changed. Thus it is still possible to maintain multiple account sections in the configuration file, however only one can be actively selected by the default_account attribute from the DEFAULT section. Switching between accounts can be achieved by selecting a new default account via 'azurectl setup account default --name ...' but no longer via the --account option. This fixes Issue #60 * Fri Oct 16 2015 jmason@suse.de - Don't pass the 'media_location' attribute to python API Signed-off-by: James Mason <jmason@suse.com> * Fri Oct 16 2015 ms@suse.de - Fixed completion generator mutual exclusive options were not parsed correctly * Wed Oct 07 2015 ms@suse.de - Prefix accounts and regions in config file * Tue Oct 06 2015 ms@suse.de - Fixed completion generator global options without a value contained the closing bracket * Mon Oct 05 2015 ms@suse.de - major version bump * Mon Oct 05 2015 ms@suse.de - Update manual pages and documentation * Mon Oct 05 2015 ms@suse.de - Change configuration file structure Instead of one account section containing information about the Azure account as well as information about the storage/container account it is required to handle these information in separate sections. The reason for this change is that storage accounts can exist in different regions. Therefore the storage accounts should be placed in a region section This refactoring also impacts commands with --region and/or --container options because they are now handled as global options. The new configuration format is as follows: [DEFAULT] default_account = account:name default_region = region:name [account:some-account] publishsettings = filename [region:some-region] default_storage_account = name default_storage_container = name storage_accounts = comma-list storage_containers = comma-list The account setup command allows to perform the following actions * add account and region sections * remove sections * set default account * set default region There is still room for improvement on the account setup command However that should be part of an additional implementation. This fixes Issue #57 * Fri Oct 02 2015 ms@suse.de - Revert "Add a script that enables running azurectl commands from the git project dir." * Thu Oct 01 2015 jmason@suse.de - Add a script that enables runnign azurectl commands from the git project. * Thu Oct 01 2015 jmason@suse.de - When creating a VM using an ssh key, wait for service to create the key dependency before continuing on. * Mon Sep 28 2015 ms@suse.de - Some alpha order fixes * Mon Sep 28 2015 ms@suse.de - Update manual page for setup account default * Mon Sep 28 2015 ms@suse.de - Fixed config parser default section handling The DEFAULT section in an INI file is handled special by python's config parser implementation. Therefore this patch refactors the way we use the config file sections. Any section of the config file belongs to an account, the DEFAULT section allows to select one of those accounts as the default account with the default_account keyword. In addition the subcommand to handle the default account was added. This fixes Issue #51 * Fri Sep 25 2015 jmason@suse.de - Remove unnecessary imports and params re: https://github.com/SUSE/azurectl/pull/52#discussion_r40405561 re: https://github.com/SUSE/azurectl/pull/52#discussion_r40405594 re: https://github.com/SUSE/azurectl/pull/52#discussion_r40405682 * Fri Sep 25 2015 jmason@suse.de - Fixup app initialization of CliTask re: https://github.com/SUSE/azurectl/pull/52#discussion_r40405511 * Thu Sep 24 2015 jmason@suse.de - Override a smaller scoped method instead of __init__. re: https://github.com/SUSE/azurectl/pull/52#discussion_r40293520 * Thu Sep 24 2015 jmason@suse.de - Simplify code around re-raising an error. "By using raise with no arguments, you will re-raise the last exception." - https://wiki.python.org/moin/HandlingExceptions re: https://github.com/SUSE/azurectl/pull/52#discussion_r40293596 * Thu Sep 24 2015 ms@suse.de - Update coverage reference * Thu Sep 24 2015 ms@suse.de - Fixed code smells * Wed Sep 23 2015 ms@suse.de - Major version bump Added request command * Wed Sep 23 2015 jmason@suse.de - Update coverage * Wed Sep 23 2015 jmason@suse.de - Allow `setup account add` to function without an existing config file Addresses Issue #48 * Wed Sep 23 2015 ms@suse.de - Cleanup misleading use of get_service member * Wed Sep 23 2015 ms@suse.de - Separate commands and options in usage message * Tue Sep 22 2015 ms@suse.de - Added request management Added support for obtaining request status and also waiting for request completion for service management tasks * Tue Sep 22 2015 ms@suse.de - Minor coverage checker fix Don't fail on missing hash key * Tue Sep 22 2015 ms@suse.de - Fixed wait_for_request_completion in vm create The RequestResult class expects a service management instance not a cloud service instance in order to get the request status. * Fri Sep 18 2015 ms@suse.de - Minor version bump Follow XDG Base Directory Specification for config file * Fri Sep 18 2015 ms@suse.de - Update README file and manual page Added information about config files to the README Added information about debug option in the man page * Fri Sep 18 2015 ms@suse.de - Better error message for config file not found * Fri Sep 18 2015 ms@suse.de - Make config file message a debug message Along with the change introduce a --debug global switch * Fri Sep 18 2015 ms@suse.de - Display a log message which config file is used * Fri Sep 18 2015 ms@suse.de - Make sure config file is read only once I realized any instance of AzureAccount reads in the config file. This is unwanted and should be done only once. In order to fix this in a clean way the AzureAccount needs to receive a Config instance instead of the data to create its own one * Fri Sep 18 2015 ms@suse.de - Better error message for missing default config * Thu Sep 17 2015 ms@suse.de - Moved primary default config file location With respect to the XDG Base Directory Specification the default config file location for azurectl has changed. The default config file is now searched in the following order and paths 1. ~/.config/azurectl/config 2. ~/.azurectl/config This fixes issue #41 * Fri Sep 11 2015 ms@suse.de - Move travis script to refer community project Instead of my personal (schaefi) fork we should have the forked repos for azure-storage and azure-sdk in the SUSE namespace to allow all team members to contribute * Wed Sep 09 2015 jmason@suse.de - Bugfix: image deletion There are two types of images in Azure: OS Images, which are like 'templates', and VM Images, which are extracted from a running VM. Images are created with `create_os_image`; but the delete method attempted to use `delete_vm_image`. * Wed Sep 09 2015 jmason@suse.de - Sub version bump for bugfix on subscription selection * Wed Sep 09 2015 jmason@suse.de - Consistent naming of fixtures * Wed Sep 09 2015 jmason@suse.de - Recomplete test coverage * Wed Sep 09 2015 jmason@suse.de - Bugfix: Load certificates from the selected subscription * Wed Sep 09 2015 jmason@suse.de - Rename a function for improved clarity * Wed Sep 09 2015 ms@suse.de - Minor style fix to make the completion happy * Wed Sep 09 2015 jmason@suse.de - Minor version bump + publishing with subscription-id config support * Tue Sep 08 2015 jmason@suse.de - An Azure account may contain many subscriptions: + Add a config option to select a subscription id from a set + Default to the first subscription in an account if no id is supplied * Tue Sep 08 2015 jmason@suse.de - Test for default behavior when publishsettings includes more than one subscription * Tue Sep 08 2015 jmason@suse.de - Add XML prefix to existing publishsettings fixtures * Fri Sep 04 2015 ms@suse.de - Fixed build for older distributions <= 1110 * Thu Aug 27 2015 ms@suse.de - Fixed requires in setup.py due to Azure renaming the module distribution the azurectl required names has to follow the change too * Thu Aug 27 2015 jmason@suse.de - Update coverage * Thu Aug 27 2015 jmason@suse.de - Version bump due to new features * Thu Aug 27 2015 jmason@suse.de - Update python-dateutil to match the package we ship in Cloud:Tools * Wed Aug 26 2015 ms@suse.de - Support for VM publishing * Wed Aug 26 2015 ms@suse.de - Set travis target to development branch replication support has been added to the Azure SDK in the compute_management_service development branch. As long as this is not merged to Azure master testing needs to be done from there * Wed Aug 26 2015 ms@suse.de - Support for VM image replication/unreplication * Tue Aug 25 2015 ms@suse.de - Catch exceptions from get_storage_account_keys * Mon Aug 24 2015 ms@suse.de - Update travis tests due to Azure SDK restructuring The Azure Storage part of the SDK has been moved into its own git repository. This testing and also packaging of the SDK has changed * Tue Jul 28 2015 ms@suse.de - Fixed cloud service creation Instead of looking for a specific exception type on creation of a cloud service check before if the cloud service in question already exists by calling get_hosted_service_properties * Tue Jul 28 2015 ms@suse.de - Avoid unspecified except blocks * Sun Jul 26 2015 ms@suse.de - Update SDK version requirement * Fri Jul 24 2015 ms@suse.de - Specify log string format arguments as parameters * Fri Jul 24 2015 ms@suse.de - Specify log string format arguments as parameters * Fri Jul 24 2015 ms@suse.de - Fixed Health indicator * Fri Jul 24 2015 ms@suse.de - Added code health status to README * Fri Jul 24 2015 ms@suse.de - Don't use old style class declarations * Fri Jul 24 2015 ms@suse.de - Fixed unused imports and variables * Fri Jul 24 2015 ms@suse.de - Fixed unused imports from OpenSSL.crypto * Fri Jul 24 2015 ms@suse.de - Fixed unused imports * Fri Jul 24 2015 ms@suse.de - Specify the scope of the travis requirements file * Fri Jul 24 2015 ms@suse.de - Moved comment from travis.yml to requirements.txt The comment about azure usage from pip and the fact that we currently use the dev branch has been moved to the requirements.txt file * Fri Jul 24 2015 tom_schr@suse.de - Renamed requirements.txt -> .requirements.txt As suggested by Marcus :) * Thu Jul 23 2015 tom_schr@suse.de - Support pip requirements.txt for Travis too * Thu Jul 23 2015 tom_schr@suse.de - Inserted requirements.txt for pip Useful as you don't need to change .travis.yml and only the file requirements.txt. For more information, see https://pip.readthedocs.org/en/1.1/requirements.html * Tue Jul 21 2015 ms@suse.de - Update code base to use SDK's dev branch Microsoft will release the dev branch to be the new SDK. The version will be at 0.20.x and is incompatible to 0.11.x This commit updates azurectl to work with the dev branch * Sun Jul 19 2015 ms@suse.de - Revert "Integrate with https://codecov.io" Sorry my fault, wanted to integrate with landscape.io and not with codecov. This reverts commit 956b81b * Sun Jul 19 2015 ms@suse.de - Integrate with https://codecov.io * Fri Jul 17 2015 ms@suse.de - Fixed completion generator Add special handling for --version which will also support a short option form -v added by James in the next commit * Thu Jul 16 2015 jmason@suse.de - Short switch `-v` for version. * Thu Jul 16 2015 tom_schr@suse.de - Added Travis batch image * Wed Jul 15 2015 jmason@suse.de - Increment azure-sdk dependency to match version in OBS. * Wed Jul 15 2015 jmason@suse.de - Remove logging noise during uploads. The scheduler was still triggering events during upload, causing lots of log noise around the progress bar. Proposed solution is to add another class of event for logging to ignore. TODO: subversion bump on merge. * Wed Jul 15 2015 jmason@suse.de - Minor version bump. In accordance with semantic versioning, both the `azure files` functions and the `compute vm` functions should have been accompanied by a version bump. Time to catch up. * Wed Jul 08 2015 ms@suse.de - Added support for compute vm types List available instance types and their attributes * Tue Jul 07 2015 ms@suse.de - Don't require test env to provide a config file * Tue Jul 07 2015 ms@suse.de - Use of has_key is deprecated * Tue Jul 07 2015 ms@suse.de - Test code coverage now at 100% * Tue Jul 07 2015 ms@suse.de - Editorial review compute::vm manual page * Mon Jul 06 2015 ms@suse.de - Don't require tests to have pjson installed * Mon Jul 06 2015 ms@suse.de - Test code coverage now at 99% * Sun Jul 05 2015 ms@suse.de - Added RequestResult class Encapsulate operations based on a request ID returned from the Azure API. This makes the code more explicit as well as allows to think of commands like azurectl compute request status --id <id> azurectl compute request wait --id <id> in the future * Fri Jul 03 2015 ms@suse.de - Update spec file requirements * Fri Jul 03 2015 ms@suse.de - Fixed completion generator Option values of the form [opt1=<val1> | opt2=<val2>] were not processed correctly * Thu Jul 02 2015 ms@suse.de - Update manual page for azurectl compute vm * Wed Jul 01 2015 ms@suse.de - Fixed shell quotation for bin/azurectl helper * Mon Jun 29 2015 ms@suse.de - Added compute image delete command Along with virtual machine creation the deletion of the image created per instance should be possible. This also completes the image command * Fri Jun 26 2015 ms@suse.de - Added support for virtual machine management * Wed Jun 24 2015 ms@suse.de - Update travis setup to allow custom azure versions * Wed Jun 24 2015 ms@suse.de - Added support for the Azure File Share service azurectl compute storage share list, create and delete will be added with this commit. Once created a file share can be mounted using a CIFS mount * Wed Jun 10 2015 ms@suse.de - Update README signing git patches belongs to issue tracking and solving * Wed Jun 10 2015 ms@suse.de - Update README Improve the flow of reading the doc in the sequence of the tasks in order to get started * Wed Jun 10 2015 ms@suse.de - Update README Added information how to install azurectl via zypper * Tue Jun 09 2015 ms@suse.de - Catch ConfigParser exceptions and handle them When adding a section we might run into error conditions like DuplicateSectionError. These were not handled and caused an Unexpected error plus trace * Mon Jun 08 2015 ms@suse.de - Switch back to argument lists For details read Pull #27 * Mon Jun 08 2015 ms@suse.de - Update README, editorial changes * Mon Jun 08 2015 ms@suse.de - Update README Make the section about signing git commits more readable due to style and format * Mon Jun 08 2015 ms@suse.de - Added information about azurectl setup account use * Fri Jun 05 2015 ms@suse.de - Prevent hard class dependency Don't create a hard dependency between commandline arguments and the implementation classes uses them * Thu Jun 04 2015 ms@suse.de - Apply Sandy Metz, practical OO design pattern Use an argument hash for methods with more than one or two arguments * Thu Jun 04 2015 ms@suse.de - Validate if given publish settings files exists On 'azurectl setup account add' check if the given publish settings file exists * Thu Jun 04 2015 ms@suse.de - Fixed typo in exception message print information about filename not class name * Wed Jun 03 2015 rjschwei@suse.de - Add information about signing of code commits * Tue Jun 02 2015 ms@suse.de - Make sure warning messages are logged on stdout * Tue Jun 02 2015 ms@suse.de - Update coverage reference * Tue Jun 02 2015 ms@suse.de - Added azurectl setup service The command allows to manage the azurectl configuration by adding, deleting and listing configuration sections. This Fixes #10 * Tue Jun 02 2015 ms@suse.de - Fixed coverage checker Dealing with new source files not part of the reference data caused an exception in the checker. This is fixed treating new source files as 100% covered which are then compared with their real coverage value. If the new source can't be 100% covered an update of the reference data is needed via 'make coverage' * Mon Jun 01 2015 ms@suse.de - Fixed build latest change to make build target breaks the build because the spec file template was not adapted accordingly * Mon Jun 01 2015 ms@suse.de - Update spec file requirements Due to incompatible changes in the SDK version from Microsoft we explicitly bind azurectl to an SDK version >= 0.11.0 * Mon Jun 01 2015 ms@suse.de - Fixed setup.py azure module version dependency * Sun May 31 2015 ms@suse.de - Fixed azurectl for use with latest SDK version The way how shared access signatures are created has changed incompatible * Sat May 30 2015 rjschwei@suse.de - Provide version number in the tarballs generated by the 'make build' + It is easier for packagers to manage packaging if the version number is encoded in the name of the tarball. This is also common accepted practice. This fixes Issue #24 * Fri May 22 2015 ms@suse.de - get_operation_status called on the wrong object The status can be queried with a request ID from the ServiceManagementService and not from AsynchronousOperationResult This Fixes #22 * Wed May 20 2015 ms@suse.de - Fixed Makefile target: build Delete version information from setup.py on make build The rpm package and the packagemanager should handle this exclusively and we don't want the egg info to play a role here * Wed May 20 2015 ms@suse.de - Version 0.8.4 Final touches before first public release * Tue May 19 2015 ms@suse.de - Pin required python modules to version in setup.py * Tue May 19 2015 jmason@suse.de - Suggested changes to the existing manpage content * Tue May 19 2015 jmason@suse.de - s/azure?cli/azurectl/g Tests pass, make makes * Mon May 18 2015 ms@suse.de - Added test code coverage check Based on a reference file test/unit/coverage.reference.xml a check runs which compares the coverage ratio from a current nosetests coverage information with the reference data. If the code coverage decreases this is an error and coverage-check invoked by 'make test' with fail * Fri May 15 2015 ms@suse.de - Log error messages to stderr and info to stdout * Fri May 15 2015 ms@suse.de - Update travis setup Use an azure SDK version from pip compatible with the rpm packaged version we ship * Fri May 15 2015 ms@suse.de - Filter out message from BackgroundSscheduler Appscheduler is auto connected to the python logging system and spawns info messages about each iteration. We don't want to see this information especially when we show a progress information from a long running process * Fri May 15 2015 rjschwei@suse.de - Add information agreed upon during final code review * Tue May 12 2015 ms@suse.de - Fixed setup the name of the dateutil module is python-dateutil In order to fix the requirement list the name must match * Wed May 06 2015 ms@suse.de - Fixed man page typos * Wed May 06 2015 ms@suse.de - Fixed missing logging.setLevel By default logging.INFO is used but other loglevels are possible if specified the call to make the level effective was missing * Wed May 06 2015 ms@suse.de - Update README * Wed May 06 2015 ms@suse.de - Added azure_command_help.txt reference data The README points to this information but it is not present in the repo. It was only present on the trello card * Wed May 06 2015 ms@suse.de - Update README * Wed May 06 2015 ms@suse.de - Update README * Wed May 06 2015 ms@suse.de - Beautify error message output prevent unneeded class path information and use format instead of str to format output strings provided by the SDK * Wed May 06 2015 ms@suse.de - Version 0.8.3 Added support for Shared Access Signature URLs * Tue May 05 2015 ms@suse.de - Added DataOutput class In order to support different output styles e.g json, XML or machine readable a new class to encapsulate this has been introduced. By default we will use json as output format. Along with this change also colored output is added which Fixes #11 * Tue May 05 2015 ms@suse.de - Fixed log.info call One overlooked old style info call, now clean with the python logging info implementation * Tue May 05 2015 ms@suse.de - Fixed storage::container man page layout markdown to man conversion requires this style change * Tue May 05 2015 ms@suse.de - Use python logging class The python logging class offers most of the functionality we need to log our messages. However it does not provide a progress indicator. Thus the logging class as it is used here is also extended by a progress indicator * Tue May 05 2015 jmason@suse.de - Add manpage content & fix a typo in docopts. * Tue May 05 2015 ms@suse.de - Added file type identification for upload source The azurectl compute storage upload command will now detect the filetype and apply the decompression only for detected types. If no supported decompressor type is found the file is uploaded as it is * Tue May 05 2015 jmason@suse.de - Add additional dependency: dateutil The other additional includes are all part of the std. libraries (datetime, re, urlparse). * Mon May 04 2015 jmason@suse.de - Change travis config to allow use of container service * Mon May 04 2015 jmason@suse.de - Redefine test to be not bound to my specific signature. * Mon May 04 2015 jmason@suse.de - Generate SAS URLS for storage containers * Mon May 04 2015 jmason@suse.de - Change unknown exception to closest existing match. * Mon May 04 2015 jmason@suse.de - Validate new arguments * Fri May 01 2015 jmason@suse.de - Add task & interface for generating container SAS urls * Wed Apr 29 2015 ms@suse.de - Fixed exception handling in AzureAccount exceptions from the service management service were not caught which caused an unexpected error * Wed Apr 29 2015 ms@suse.de - Fixed install_requires in setup.py * Tue Apr 28 2015 ms@suse.de - Use SDK make_blob_url to construct the media_link * Tue Apr 28 2015 ms@suse.de - Added note that we need a get_media_link in the SDK * Tue Apr 28 2015 ms@suse.de - Added azure sdk via pip to travis tests * Tue Apr 28 2015 ms@suse.de - Only run pep8 tests in travis Because the azure-cloud-sdk is not available in pip the support for running unit tests is currently disabled * Tue Apr 28 2015 ms@suse.de - Added pep8 to travis install section * Tue Apr 28 2015 ms@suse.de - Added travis CI configuration The project will be added to the Travis Continous Integration Test framework * Tue Apr 28 2015 ms@suse.de - Added tests for exceptions AzureBlobServicePropertyError, AzureOsImageCreateError * Tue Apr 28 2015 ms@suse.de - Added azurectl compute image create command This command implements the creation of an Os image from a VHD disk image file stored in a Microsoft Azure storage container * Mon Apr 27 2015 ms@suse.de - Fixed Makefile default target processing * Mon Apr 27 2015 ms@suse.de - Better error message for unknown service command * Sun Apr 05 2015 ms@suse.de - Update README style fix for list elements * Sun Apr 05 2015 ms@suse.de - Update README * Sun Apr 05 2015 ms@suse.de - Update README Add information about manual pages * Sat Apr 04 2015 ms@suse.de - Integrate man pages to package * Sat Apr 04 2015 ms@suse.de - Added manual page system Each command and subcommand understands 'help' and opens the appropriate man page for detailed information * Sat Apr 04 2015 ms@suse.de - Added manual page templates for azurectl commands * Fri Apr 03 2015 ms@suse.de - Fixed rpmlint warnings * Fri Apr 03 2015 ms@suse.de - Fixed spec file template due to name change * Fri Apr 03 2015 ms@suse.de - Fixed package build target completion source tarball does not contain the azurectl.sh completion script at the right path * Fri Apr 03 2015 ms@suse.de - Fixed package build target completion source file has changed its name * Fri Apr 03 2015 ms@suse.de - Fixed spec file due to name change * Fri Apr 03 2015 ms@suse.de - Fixed azurectl completion Continue to complete possible option values for the used command even if one of the set is already used in the command line * Fri Apr 03 2015 ms@suse.de - Fixed typo in AzureXZError exception message * Fri Apr 03 2015 ms@suse.de - Update completion generator The previous version was based on completing positional parameters. But we don't want to use them thus the completion file generator has to adapt * Fri Apr 03 2015 ms@suse.de - Don't use positional arguments in help command * Thu Apr 02 2015 ms@suse.de - Don't use positional parameters * Thu Apr 02 2015 ms@suse.de - Added unit tests for publish settings exceptions * Wed Apr 01 2015 ms@suse.de - Added --quiet option for upload In addition document the available option values * Wed Apr 01 2015 ms@suse.de - Handle error conditions for publishsettings import Exceptions for invalid XML and/or missing Subscription section are captured as well es decoding errors from pkcs12/base64 decryption * Tue Mar 31 2015 ms@suse.de - Fully automated creation of bash completion file completion_generator now based on python to parse the docopt string and turn that information into a bash completion file * Mon Mar 30 2015 rjschwei@suse.de - Support a default location on non Unix based system * Sun Mar 29 2015 ms@suse.de - Fixed task unit tests The tests should not read the default config file, they should read the unit test provided config file * Sun Mar 29 2015 rjschwei@suse.de - Handle parse error + Provide the user with a reasonable message if there is an error parsing the config file. * Sun Mar 29 2015 rjschwei@suse.de - Copyright needs a year to be valid * Sun Mar 29 2015 rjschwei@suse.de - Add pre-commit hook + Run basic testing locally before commiting changes to the branch. This should help to catch the most obvious errors first. * Sun Mar 29 2015 rjschwei@suse.de - rename the config class read() method to get_option() + The new name is less ganeric and reflects more closely the purpose of the method. - rjschwei@suse.de - Editorial changes and additions for README.md + Add dependency list + Add more information about how to contribute * Sat Mar 28 2015 ms@suse.de - Fixed completion for current caller syntax This one is just a start. The completion script is a static version and not yet autogenerated from the source code * Sat Mar 28 2015 ms@suse.de - Update location of global options in help message * Sat Mar 28 2015 ms@suse.de - Update README due to to rename of the tool * Sat Mar 28 2015 ms@suse.de - Adapt command usage help to new caller layout * Fri Mar 27 2015 ms@suse.de - Adapt unit tests to new caller layout * Thu Mar 26 2015 ms@suse.de - Restructure command call syntax due to review * Wed Mar 25 2015 ms@suse.de - Clarify parameter names in __query_account_for() * Wed Mar 25 2015 ms@suse.de - Perform align check prior to setting upload status * Wed Mar 25 2015 ms@suse.de - Added doc string for all classes * Wed Mar 25 2015 ms@suse.de - Fixed e-mail address in setup.py * Wed Mar 25 2015 ms@suse.de - Rename exceptions to azurectl_exceptions Avoid confusion about generic python exception class * Wed Mar 25 2015 ms@suse.de - Rename azure-cli command to azurectl * Wed Mar 25 2015 ms@suse.de - Added Apache license and pre-able to source files * Wed Mar 25 2015 ms@suse.de - Automatically know about new commands * Wed Mar 25 2015 ms@suse.de - First series of patches according to style guide Also added a pep8 test target for the source and the tests * Tue Mar 24 2015 ms@suse.de - Correct program name in version output * Tue Mar 24 2015 ms@suse.de - Delete unused code * Mon Mar 23 2015 ms@suse.de - Update bash completion * Mon Mar 23 2015 ms@suse.de - Added missing test for storage_container method * Mon Mar 23 2015 ms@suse.de - Update README * Sat Mar 21 2015 ms@suse.de - Added default container name in config file * Fri Mar 20 2015 ms@suse.de - Make sure the upload progress is shown At the end of an upload update the upload status to ensure a final result information * Fri Mar 20 2015 ms@suse.de - Added percentage progress bar on upload * Thu Mar 19 2015 ms@suse.de - Added python-azure-sdk requirement to spec file * Tue Mar 17 2015 ms@suse.de - Fixed build * Mon Mar 16 2015 ms@suse.de - Added completion data to build source * Mon Mar 16 2015 ms@suse.de - Added automatic creation of completion script * Mon Mar 16 2015 ms@suse.de - Switch back to default completion if no cmd result * Mon Mar 16 2015 ms@suse.de - Added version.py export __version__ for the entire tool and use it at runtime and for building the package * Mon Mar 16 2015 ms@suse.de - Added rpm package build infrastructure * Thu Mar 12 2015 aosthof@suse.de - Proofread and correct README.md for azure-cli * Thu Mar 12 2015 ms@suse.de - Update README Provide more detailed information how to download the publishsettings file for a specific azure account * Tue Mar 10 2015 ms@suse.de - Read new zero_page only if required * Tue Mar 10 2015 ms@suse.de - Explicitly set UTC timezone for upload * Tue Mar 10 2015 ms@suse.de - APScheduler api has changed adapt code for use with non blocking scheduler * Tue Mar 10 2015 ms@suse.de - Update README * Sun Mar 08 2015 ms@suse.de - Added bash completion to install target * Sun Mar 08 2015 ms@suse.de - Make --max-chunk-size a disk command option Remove the option from the global space * Sun Mar 08 2015 ms@suse.de - Added bash completion * Sun Mar 08 2015 ms@suse.de - Add a Config class and test Move the former account super class to be a config class because that's what it knows about. The single responsibility of the Config class is to be able to read the config file parameters * Sun Mar 08 2015 ms@suse.de - No need to have an Account super class Since there is now only one AzureAccount class there is no need to have an account super class * Sun Mar 08 2015 ms@suse.de - Switch to JSON output * Sun Mar 08 2015 ms@suse.de - More precise help messages for container and disk * Sun Mar 08 2015 ms@suse.de - Use named tuples instead of hash keys This is to keep the dot notation and the message based object design * Sun Mar 08 2015 ms@suse.de - On XZ error raise useful exception * Sun Mar 08 2015 ms@suse.de - Refactor account usage Use only one AzureAccount class to handle storage and service account credentials. They are tied together anyway * Sat Mar 07 2015 ms@suse.de - Cleanup storage account unit test class stub names have to correspond with the implementation * Sat Mar 07 2015 ms@suse.de - Make use of mock.patch Instead of global Fake class definitions use patch feature for unit tests * Sat Mar 07 2015 ms@suse.de - Added 512 byte align check for PageBlobs * Fri Mar 06 2015 ms@suse.de - Accept XZ compressed input for upload In addition an the option --name for disk upload has been added to specify the target name of the image file in the container * Thu Mar 05 2015 ms@suse.de - Added XZ decompression class * Thu Mar 05 2015 ms@suse.de - Update README * Thu Mar 05 2015 ms@suse.de - Move container content <name> to disk command It feels more natural to allow listing the disk in a container by a disk list <container> command which also allows upload and deletion * Tue Mar 03 2015 ms@suse.de - Fixed too many spaces in variable assignment * Tue Mar 03 2015 ms@suse.de - Upload only non zero pages This implements a smarter handling of sparse file uploading * Tue Mar 03 2015 ms@suse.de - Use put_page to allow offset based page updates * Tue Mar 03 2015 ms@suse.de - Implement our own chunking in upload This is done to be more flexible in uploading big files as list of blocks. Better handling of sparse file uploads will be a follow up on this change * Thu Feb 26 2015 ms@suse.de - Update README * Thu Feb 26 2015 ms@suse.de - Update README * Thu Feb 26 2015 ms@suse.de - Add used storage account name in container info When calling e.g 'container list' you get all container names but you don't know from which storage account name was used One would need to look at the config file to check which storage account name was configured which could be avoided by just adding this information to the output * Thu Feb 26 2015 ms@suse.de - Added azure-cli storage command Allows to list names of storage accounts * Thu Feb 26 2015 ms@suse.de - Added method to get storage names Added method StorageAccount::list() which returns the names of the available storage accounts within the subscription. * Tue Feb 17 2015 ms@suse.de - Added list_tests and single test targets * Tue Feb 17 2015 ms@suse.de - Fixed unit tests mocked classes are not reset which prevented the tests from being able to run separately * Tue Feb 17 2015 ms@suse.de - Fixed typo, uppload -> upload * Tue Feb 17 2015 ms@suse.de - Makefile target for test should be a phony target * Wed Feb 11 2015 ms@suse.de - Don't require explicit import of task classes * Wed Feb 11 2015 ms@suse.de - Move command docopt usage to task classes Cleanup and simplify task classes unit tests * Tue Feb 10 2015 ms@suse.de - Delete unused get_command() call * Thu Jan 22 2015 ms@suse.de - Add missing assertions to task tests * Tue Jan 20 2015 ms@suse.de - Restructure command processing What should be done for a command and its options should be encapsulated in a task class which knows that * Fri Jan 16 2015 ms@suse.de - Update README * Fri Jan 16 2015 ms@suse.de - Retrieve account key from ServiceManagementService * Fri Jan 16 2015 ms@suse.de - Update publish settings reader to schema v2.0 * Wed Jan 14 2015 ms@suse.de - Added unit tests for ServiceAccount * Wed Jan 14 2015 ms@suse.de - Make use of publish settings file * Tue Jan 13 2015 ms@suse.de - Added image command implemented service account handling and the list command which prints the available os images for the configured subscription * Tue Jan 13 2015 ms@suse.de - Added info message if detailed help is missing * Mon Jan 12 2015 ms@suse.de - Added disk command Implemented disk image upload and removal * Sun Jan 11 2015 ms@suse.de - Document basic azure-cli behavior * Wed Jan 07 2015 ms@suse.de - Initial azure commandline tool interface Start with a proposal for the azure-cli project including tests based on nose, commandline parsing based on docopt and an initial structure for implementing commands
/etc/bash_completion.d/azurectl.sh /usr/bin/azurectl /usr/lib/python3.6/site-packages/azurectl /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info/PKG-INFO /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info/SOURCES.txt /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info/dependency_links.txt /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info/entry_points.txt /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info/not-zip-safe /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info/requires.txt /usr/lib/python3.6/site-packages/azurectl-3.0.4-py3.6.egg-info/top_level.txt /usr/lib/python3.6/site-packages/azurectl/__init__.py /usr/lib/python3.6/site-packages/azurectl/__pycache__ /usr/lib/python3.6/site-packages/azurectl/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/app.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/azurectl.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/azurectl_exceptions.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/cli.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/defaults.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/help.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/logger.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/__pycache__/version.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/account /usr/lib/python3.6/site-packages/azurectl/account/__init__.py /usr/lib/python3.6/site-packages/azurectl/account/__pycache__ /usr/lib/python3.6/site-packages/azurectl/account/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/account/__pycache__/service.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/account/__pycache__/setup.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/account/service.py /usr/lib/python3.6/site-packages/azurectl/account/setup.py /usr/lib/python3.6/site-packages/azurectl/app.py /usr/lib/python3.6/site-packages/azurectl/azurectl.py /usr/lib/python3.6/site-packages/azurectl/azurectl_exceptions.py /usr/lib/python3.6/site-packages/azurectl/cli.py /usr/lib/python3.6/site-packages/azurectl/commands /usr/lib/python3.6/site-packages/azurectl/commands/__init__.py /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__ /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/base.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/compute_data-disk.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/compute_endpoint.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/compute_image.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/compute_request.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/compute_reserved-ip.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/compute_shell.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/compute_vm.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/setup_account.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/storage_account.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/storage_container.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/storage_disk.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/__pycache__/storage_share.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/commands/base.py /usr/lib/python3.6/site-packages/azurectl/commands/compute_data-disk.py /usr/lib/python3.6/site-packages/azurectl/commands/compute_endpoint.py /usr/lib/python3.6/site-packages/azurectl/commands/compute_image.py /usr/lib/python3.6/site-packages/azurectl/commands/compute_request.py /usr/lib/python3.6/site-packages/azurectl/commands/compute_reserved-ip.py /usr/lib/python3.6/site-packages/azurectl/commands/compute_shell.py /usr/lib/python3.6/site-packages/azurectl/commands/compute_vm.py /usr/lib/python3.6/site-packages/azurectl/commands/setup_account.py /usr/lib/python3.6/site-packages/azurectl/commands/storage_account.py /usr/lib/python3.6/site-packages/azurectl/commands/storage_container.py /usr/lib/python3.6/site-packages/azurectl/commands/storage_disk.py /usr/lib/python3.6/site-packages/azurectl/commands/storage_share.py /usr/lib/python3.6/site-packages/azurectl/config /usr/lib/python3.6/site-packages/azurectl/config/__init__.py /usr/lib/python3.6/site-packages/azurectl/config/__pycache__ /usr/lib/python3.6/site-packages/azurectl/config/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/config/__pycache__/file_path.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/config/__pycache__/parser.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/config/file_path.py /usr/lib/python3.6/site-packages/azurectl/config/parser.py /usr/lib/python3.6/site-packages/azurectl/defaults.py /usr/lib/python3.6/site-packages/azurectl/help.py /usr/lib/python3.6/site-packages/azurectl/instance /usr/lib/python3.6/site-packages/azurectl/instance/__init__.py /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__ /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__/cloud_service.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__/data_disk.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__/endpoint.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__/image.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__/reserved_ip.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/instance/__pycache__/virtual_machine.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/instance/cloud_service.py /usr/lib/python3.6/site-packages/azurectl/instance/data_disk.py /usr/lib/python3.6/site-packages/azurectl/instance/endpoint.py /usr/lib/python3.6/site-packages/azurectl/instance/image.py /usr/lib/python3.6/site-packages/azurectl/instance/reserved_ip.py /usr/lib/python3.6/site-packages/azurectl/instance/virtual_machine.py /usr/lib/python3.6/site-packages/azurectl/logger.py /usr/lib/python3.6/site-packages/azurectl/management /usr/lib/python3.6/site-packages/azurectl/management/__init__.py /usr/lib/python3.6/site-packages/azurectl/management/__pycache__ /usr/lib/python3.6/site-packages/azurectl/management/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/management/__pycache__/request_result.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/management/request_result.py /usr/lib/python3.6/site-packages/azurectl/storage /usr/lib/python3.6/site-packages/azurectl/storage/__init__.py /usr/lib/python3.6/site-packages/azurectl/storage/__pycache__ /usr/lib/python3.6/site-packages/azurectl/storage/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/storage/__pycache__/account.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/storage/__pycache__/container.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/storage/__pycache__/fileshare.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/storage/__pycache__/page_blob.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/storage/__pycache__/storage.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/storage/account.py /usr/lib/python3.6/site-packages/azurectl/storage/container.py /usr/lib/python3.6/site-packages/azurectl/storage/fileshare.py /usr/lib/python3.6/site-packages/azurectl/storage/page_blob.py /usr/lib/python3.6/site-packages/azurectl/storage/storage.py /usr/lib/python3.6/site-packages/azurectl/utils /usr/lib/python3.6/site-packages/azurectl/utils/__init__.py /usr/lib/python3.6/site-packages/azurectl/utils/__pycache__ /usr/lib/python3.6/site-packages/azurectl/utils/__pycache__/__init__.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/utils/__pycache__/collector.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/utils/__pycache__/filetype.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/utils/__pycache__/output.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/utils/__pycache__/validations.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/utils/__pycache__/xz.cpython-36.pyc /usr/lib/python3.6/site-packages/azurectl/utils/collector.py /usr/lib/python3.6/site-packages/azurectl/utils/filetype.py /usr/lib/python3.6/site-packages/azurectl/utils/output.py /usr/lib/python3.6/site-packages/azurectl/utils/validations.py /usr/lib/python3.6/site-packages/azurectl/utils/xz.py /usr/lib/python3.6/site-packages/azurectl/version.py /usr/share/man/man1/azurectl.1.gz /usr/share/man/man1/azurectl::compute::data_disk.1.gz /usr/share/man/man1/azurectl::compute::endpoint.1.gz /usr/share/man/man1/azurectl::compute::image.1.gz /usr/share/man/man1/azurectl::compute::request.1.gz /usr/share/man/man1/azurectl::compute::reserved_ip.1.gz /usr/share/man/man1/azurectl::compute::vm.1.gz /usr/share/man/man1/azurectl::setup::account.1.gz /usr/share/man/man1/azurectl::setup::account::region.1.gz /usr/share/man/man1/azurectl::storage::account.1.gz /usr/share/man/man1/azurectl::storage::container.1.gz /usr/share/man/man1/azurectl::storage::disk.1.gz /usr/share/man/man1/azurectl::storage::share.1.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Tue Jul 9 15:53:55 2024