Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
867c155
Added docs and example to work with identity v2.0
haphan Feb 6, 2018
8cdf33e
Fixed refdoc build
haphan Feb 6, 2018
72b7496
Merge pull request #204 from php-opencloud/identity-v2
haphan Feb 6, 2018
3f5d9f4
Added semver
haphan Feb 6, 2018
ac5154d
Merge pull request #205 from php-opencloud/semver
haphan Feb 6, 2018
338c029
Update authentication.php
haphan Feb 6, 2018
55889bc
Merge pull request #207 from php-opencloud/patch-newline
haphan Feb 6, 2018
8c1fe4c
Fixed containerName was not set
haphan Feb 8, 2018
1033431
Merge pull request #208 from php-opencloud/fix-objstore-containername
haphan Feb 8, 2018
4adc505
Object Storage retrieval: containerName and name missing (#210)
haphan Feb 9, 2018
7f5087e
Update README.md (#212)
haphan Feb 10, 2018
0a0b2ec
Add 'subdir' as alias for 'name' in StorageObject (#214)
icewind1991 Feb 15, 2018
9210914
Handle Datetime serialization (#148)
tchiotludo Feb 16, 2018
c9f72c0
Enforce Symfony rule check (#223)
haphan Mar 13, 2018
5dcac99
Bumped up php-coveralls to remove dated guzzle (#226)
haphan Mar 13, 2018
2883c92
Readme (#227)
haphan Mar 13, 2018
7311b52
Fixed ObjectStorage PHPDoc of contentLength and lastModified
Apr 30, 2018
3374e2b
Merge pull request #238 from vitalybaev/fixed-object-storage-phpdoc-t…
haphan May 2, 2018
22eb492
Removed sami/sami. Changed travis email notification
haphan Aug 29, 2018
884e7ec
Keep php-cs-fixer happy
haphan Aug 29, 2018
5230354
Merge pull request #253 from php-opencloud/remove-sami
haphan Aug 29, 2018
1d5eb28
Update composer: php-coveralls/php-coveralls
haphan Aug 29, 2018
73502af
BlockStorage: setBootable, setImageMetadata, resetStatus
haphan Aug 29, 2018
0aad1d0
Compute: keypairType
haphan Aug 29, 2018
526745f
Networking: portSecurity, routerExternal for Network
haphan Aug 29, 2018
66ee164
Networking L3: Mapping external fixed IPs
haphan Aug 29, 2018
76c8387
ObjectStore: Fixed typehint
haphan Aug 29, 2018
64b9e41
Networking SecurityGroups Ext: add filterName
haphan Aug 29, 2018
e875038
Added tests
haphan Aug 29, 2018
c5cf03e
Code review
haphan Aug 29, 2018
eec8fb4
Merge pull request #254 from php-opencloud/updates
haphan Aug 30, 2018
0876029
Fix number of segments of a large object
mzur Sep 13, 2018
3eba351
Merge pull request #255 from biigle/fix-large-object-segments
haphan Sep 14, 2018
689cb05
Merge remote-tracking branch 'upstream/master' into merge-latest
laszlof Mar 12, 2019
2ca24e7
Merge remote-tracking branch 'nexcess/master' into merge-latest
laszlof Mar 12, 2019
7ba159a
fix
laszlof Mar 12, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 7 additions & 3 deletions .php_cs.dist
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
<?php

if (!file_exists(__DIR__.'/src')) {
exit(0);
}

return PhpCsFixer\Config::create()
->setRules(
[
'@PSR2' => true,
'array_syntax' => ['syntax' => 'short'],
'protected_to_private' => false
'@PSR2' => true,
'@Symfony' => true,
'array_syntax' => ['syntax' => 'short'],
'binary_operator_spaces' => ['default' => 'align'],
'protected_to_private' => false,
]
)
->setUsingCache(false)
Expand Down
5 changes: 4 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ before_script:
after_script:
- php vendor/bin/coveralls -v

after_success:
- travis_retry php vendor/bin/php-coveralls -v

notifications:
email:
- jamie.hannaford@rackspace.com
- thanhha.work@gmail.com
35 changes: 19 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# PHP OpenStack SDK

[![Build Status](https://travis-ci.org/php-opencloud/openstack.svg?branch=master)](https://travis-ci.org/php-opencloud/openstack)
[![Code Coverage](https://scrutinizer-ci.com/g/php-opencloud/openstack/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/php-opencloud/openstack/?branch=master)
[![Coverage Status](https://coveralls.io/repos/github/php-opencloud/openstack/badge.svg?branch=master)](https://coveralls.io/github/php-opencloud/openstack?branch=master)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/php-opencloud/openstack/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/php-opencloud/openstack/?branch=master)

`php-opencloud/openstack` is an SDK which allows PHP developers to easily connect to OpenStack APIs in a simple and
Expand All @@ -10,33 +10,36 @@ OpenStack services, and versions of services, are supported.

## Links

* [Official documentation](http://docs.os.php-opencloud.com/)
* [Official documentation](https://php-openstack-sdk.readthedocs.io/en/latest/)
* [Reference documentation](http://refdocs.os.php-opencloud.com)
* [Contributing guide](/CONTRIBUTING.md)
* [Code of Conduct](/CODE_OF_CONDUCT.md)

## Backward incompatibility
## Getting help

- Meet us on Slack: https://phpopencloud.slack.com ([Get your invitation](https://launchpass.com/phpopencloud))
- Report an issue: https://github.com/php-opencloud/openstack/issues

Due to new [object typehint](https://wiki.php.net/rfc/object-typehint) since PHP 7.2, `Object` is a reserved keyword
thus class `OpenStack\ObjectStore\v1\Models\Object` had to be renamed to
`OpenStack\ObjectStore\v1\Models\StorageObject`. See [#184](https://github.com/php-opencloud/openstack/pull/184) for
details.

### Version Guidance
## Version Guidance

| Version | Status | PHP Version | Life span |
| Version | Status | PHP Version | End of life |
| --------- | --------------------------- | ------------- | ----------------------- |
| `^2.0` | Maintained (Bug fixes only) | `>=7.0,<7.2` | March 2016 - March 2018 |
| `^3.0` | Latest | `^7.0` | March 2018 - March 2020 |
| `^3.0` | Latest | `>=7.0` | March 2020 |
| `^2.0` | Maintained (Bug fixes only) | `>=7.0,<7.2` | March 2018 |

## Getting help

- Meet us on Slack: https://phpopencloud.slack.com ([Get your invitation](https://launchpass.com/phpopencloud))
- Report and issue: https://github.com/php-opencloud/openstack/issues
## Upgrade from 2.x to 3.x

Due to new [object typehint](https://wiki.php.net/rfc/object-typehint) since PHP 7.2, `Object` is a reserved keyword
thus class `OpenStack\ObjectStore\v1\Models\Object` had to be renamed to
`OpenStack\ObjectStore\v1\Models\StorageObject`.

This change was introduced in [#184](https://github.com/php-opencloud/openstack/pull/184).

## Requirements

* PHP 7.0
* `ext-curl`

## How to install

Expand All @@ -51,4 +54,4 @@ taken the time to write a [contributing guide](CONTRIBUTING.md) for folks intere
If you're not sure how you can get involved, feel free to
[submit an issue](https://github.com/php-opencloud/openstack/issues/new) or
[contact us](https://developer.rackspace.com/support/). You don't need to be a PHP expert - all members of the
community are welcome!
community are welcome!
24 changes: 11 additions & 13 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,23 +32,21 @@
"OpenStack\\Integration\\": "tests/integration/"
}
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/php-opencloud/Sami"
}
],
"require": {
"php": "~7.0",
"guzzlehttp/guzzle": "~6.1",
"justinrainbow/json-schema": "~5.2"
"guzzlehttp/guzzle": "^6.1",
"justinrainbow/json-schema": "^5.2"
},
"require-dev": {
"phpunit/phpunit": "^6.5",
"sami/sami": "dev-master",
"psr/log": "~1.0",
"satooshi/php-coveralls": "~1.0",
"jakub-onderka/php-parallel-lint": "0.*",
"friendsofphp/php-cs-fixer": "^2.9"
"psr/log": "^1.0",
"php-coveralls/php-coveralls": "^2.0",
"jakub-onderka/php-parallel-lint": "^1.0",
"friendsofphp/php-cs-fixer": "^2.13"
},
"extra": {
"branch-alias": {
"dev-master": "3.0-dev"
}
}
}
5 changes: 4 additions & 1 deletion doc/_exts/samples.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,10 @@ def run(self):
def visit_download_reference(self, node):
self.context.append('<a href="javascript:void(0);" class="toggle btn">Show auth code</a>')

def depart_download_reference(self, node):
self.body.append(self.context.pop())

def setup(app):
app.add_node(download_reference, html=(visit_download_reference, HTMLTranslator.depart_download_reference))
app.add_node(download_reference, html=(visit_download_reference, depart_download_reference))
app.add_directive('sample', Sample)
return {'version': '0.1'}
2 changes: 1 addition & 1 deletion doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
lexers['php-annotations'] = PhpLexer(startinline=True, linenos=1)
primary_domain = 'php'

extensions = ['sphinxcontrib.phpdomain', 'samples', 'refdoc']
extensions = ['samples', 'refdoc', 'sphinx.ext.autodoc', 'sphinx.ext.autosummary', 'sphinxcontrib.phpdomain']
source_suffix = '.rst'
master_doc = 'index'
project = u'php-opencloud'
Expand Down
12 changes: 12 additions & 0 deletions doc/services/identity/v2/authentication.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Authentication
==============

Identity v2.0
-------------

We recommend users to use identity v3 when possible.

RackSpace cloud and OVH cloud, however, are still using Keystone v2.0. This following code will work for such providers.


.. sample:: identity/v2/authentication.php
7 changes: 7 additions & 0 deletions doc/services/identity/v2/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Identity v2
===========

.. toctree::
:maxdepth: 3

authentication
6 changes: 5 additions & 1 deletion doc/services/networking/v2/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,8 @@ Networking v2

networks
subnets
ports
ports
loadbalancers
loadbalancer-pools
loadbalancer-listeners
loadbalancer-healthmonitors
12 changes: 6 additions & 6 deletions doc/services/networking/v2/loadbalancer-healthmonitors.rst
Original file line number Diff line number Diff line change
@@ -1,32 +1,32 @@
LoadBalancer HealthMonitors
=====
===========================

Create HealthMonitor
-----------
--------------------

.. sample:: networking/v2/lbaas/healthmonitors/create.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_createLoadBalancerHealthMonitor

Get HealthMonitor
-----------
-----------------

.. sample:: networking/v2/lbaas/healthmonitors/get.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_getLoadBalancerHealthMonitor

List HealthMonitors
-----------
-------------------

.. sample:: networking/v2/lbaas/healthmonitors/list.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_listLoadBalancerHealthMonitors

Update HealthMonitor
-----------
--------------------

.. sample:: networking/v2/lbaas/healthmonitors/update.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerHealthMonitor.html#method_update

Delete HealthMonitor
-----------
--------------------

.. sample:: networking/v2/lbaas/healthmonitors/delete.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerHealthMonitor.html#method_delete
12 changes: 6 additions & 6 deletions doc/services/networking/v2/loadbalancer-listeners.rst
Original file line number Diff line number Diff line change
@@ -1,32 +1,32 @@
LoadBalancer Listeners
=====
======================

Create Listener
-----------
---------------

.. sample:: networking/v2/lbaas/listeners/create.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_createLoadBalancerListener

Get Listener
-----------
------------

.. sample:: networking/v2/lbaas/listeners/get.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_getLoadBalancerListener

List Listeners
-----------
--------------

.. sample:: networking/v2/lbaas/listeners/list.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_listLoadBalancerListeners

Update Listener
-----------
---------------

.. sample:: networking/v2/lbaas/listeners/update.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerListener.html#method_update

Delete Listener
-----------
---------------

.. sample:: networking/v2/lbaas/listeners/delete.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerListener.html#method_delete
14 changes: 7 additions & 7 deletions doc/services/networking/v2/loadbalancer-pools.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
LoadBalancer Pools
=====
==================

Create Pool
-----------
Expand All @@ -8,13 +8,13 @@ Create Pool
.. refdoc:: OpenStack/Networking/v2/Service.html#method_createLoadBalancerPool

Get Pool
-----------
--------

.. sample:: networking/v2/lbaas/pools/get.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_getLoadBalancerPool

List Pools
-----------
----------

.. sample:: networking/v2/lbaas/pools/list.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_listLoadBalancerPools
Expand All @@ -32,25 +32,25 @@ Delete Pool
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerPool.html#method_delete

Add Member
-----------
----------

.. sample:: networking/v2/lbaas/pools/add-member.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerPool.html#method_addMember

Get Member
-----------
----------

.. sample:: networking/v2/lbaas/pools/get-member.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerPool.html#method_getMember

Delete Member
-----------
-------------

.. sample:: networking/v2/lbaas/pools/delete-member.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerPool.html#method_deleteMember

Add Health Monitor
-----------
------------------

.. sample:: networking/v2/lbaas/pools/add-healthmonitor.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancerPool.html#method_addHealthMonitor
18 changes: 9 additions & 9 deletions doc/services/networking/v2/loadbalancers.rst
Original file line number Diff line number Diff line change
@@ -1,47 +1,47 @@
LoadBalancers
=====
=============

Create LoadBalancer
-----------
-------------------

.. sample:: networking/v2/lbaas/loadbalancers/create.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_createLoadBalancer

Get LoadBalancer
-----------
----------------

.. sample:: networking/v2/lbaas/loadbalancers/get.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_getLoadBalancer

List LoadBalancers
-----------
------------------

.. sample:: networking/v2/lbaas/loadbalancers/list.php
.. refdoc:: OpenStack/Networking/v2/Service.html#method_listLoadBalancers

Update LoadBalancer
-----------
-------------------

.. sample:: networking/v2/lbaas/loadbalancers/update.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancer.html#method_update

Delete LoadBalancer
-----------
-------------------

.. sample:: networking/v2/lbaas/loadbalancers/delete.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancer.html#method_delete

Add Listener to LoadBalancer
-----------
----------------------------
.. sample:: networking/v2/lbaas/loadbalancers/add_listener.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancer.html#method_addListener

Get Stats for LoadBalancer
-----------
--------------------------
.. sample:: networking/v2/lbaas/loadbalancers/get_stats.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancer.html#method_getStats

Get Status Tree for LoadBalancer
-----------
--------------------------------
.. sample:: networking/v2/lbaas/loadbalancers/get_statuses.php
.. refdoc:: OpenStack/Networking/v2/Models/LoadBalancer.html#method_getStatuses
4 changes: 3 additions & 1 deletion phpunit.xml.dist
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<phpunit bootstrap="./vendor/autoload.php" colors="true" strict="true">

<logging>
<log type="coverage-clover" target="build/logs/clover.xml"/>
</logging>
<testsuites>
<testsuite name="OpenStack">
<directory>tests/unit</directory>
Expand Down
Loading