Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V1.11.0 ovh #24

Open
wants to merge 564 commits into
base: master
Choose a base branch
from
Open
Changes from 3 commits
Commits
Show all changes
564 commits
Select commit Hold shift + click to select a range
7e05edf
objects: Clarify ExtractContent usage
pierreprinetti Feb 4, 2023
3d9be97
objectstorage: Reject container names with a slash
pierreprinetti Feb 6, 2023
c4fd26e
nova: introduce servers.ListDetails along with a simple servers.List
kayrus Feb 8, 2023
3d1e981
Manila: add List for share-access-rules API
gman0 Nov 22, 2022
806d4af
Expand docs on 'clientconfig' usage
stephenfin Feb 16, 2023
4b279cf
Support propagate_uplink_status for Ports
lentzi90 Feb 17, 2023
752e654
README: Remove unnecessary import
stephenfin Feb 20, 2023
b9140f8
Merge pull request #2558 from stephenfin/clientconfig-docs
pierreprinetti Feb 20, 2023
5488f52
Merge pull request #2563 from Nordix/propagate_uplink_status
pierreprinetti Feb 23, 2023
4d6ab6b
Fix invalid baremetal-introspection service type
dtantsur Feb 23, 2023
caf087d
Merge pull request #2512 from gman0/shareaccessrules-list
mandre Feb 23, 2023
c9e7095
Merge pull request #2567 from dtantsur/baremetal-inspector
mandre Feb 23, 2023
a29b7d7
networking v2: add extraroutes Add and Remove methods
kayrus Feb 24, 2023
ca7fb69
Merge pull request #2572 from kayrus/extraroutes
mandre Feb 27, 2023
c26b6e6
Bump devstack-action
mandre Feb 24, 2023
e497a11
Prefer github mirrors over opendev repos
mandre Feb 24, 2023
e7de1a3
Baremetal: pull pyghmi from opendev
mandre Feb 24, 2023
ebf9f9c
Swift V1: support object versioning
kayrus Jul 7, 2021
95364c2
Merge pull request #2571 from kayrus/swift-versioning
mandre Feb 28, 2023
3c75ef9
Collect more logs in CI
mandre Feb 28, 2023
4df330e
Configure devstack for swift object versioning
mandre Feb 28, 2023
f0a4052
Enable TestObjectsVersioning test above Train
mandre Feb 28, 2023
85fb482
Merge pull request #2573 from shiftstack/object-versioning-tests
pierreprinetti Feb 28, 2023
57f4402
keystone: add v3 OS-FEDERATION mappings update operation (#2550)
emilmaruszczak Mar 1, 2023
7edb0d0
keystone: add v3 OS-FEDERATION mappings delete operation (#2576)
emilmaruszczak Mar 2, 2023
a8ce133
[neutron v2]: Add support for network segments update
kayrus Mar 5, 2023
974f426
[all] IsEmpty to check for HTTP status 204
pierreprinetti Jan 26, 2023
9ed19a8
Merge pull request #2540 from shiftstack/204_nocontent
mandre Mar 8, 2023
36ac4a4
Merge pull request #2580 from kayrus/update-segments
mandre Mar 9, 2023
bd3de14
fix: Incorrect Documentation
Radishaa Mar 10, 2023
afe276b
Merge pull request #2587 from Radishaa/Radishaa--Incorrect-Documentat…
pierreprinetti Mar 10, 2023
a50a6e5
Skip below xena and add explanation
emilmaruszczak Mar 10, 2023
d2d5278
Bump EmilienM/devstack-action from 0.10 to 0.11
dependabot[bot] Mar 13, 2023
a1187d3
Add missing rule protocol constants for IPIP (#2583)
mikejoh Mar 14, 2023
6edc800
Bump actions/setup-go from 3 to 4
dependabot[bot] Mar 16, 2023
dafdd30
Merge pull request #2594 from gophercloud/dependabot/github_actions/a…
mandre Mar 16, 2023
ffc0d5f
Add CI jobs for the zed release
mandre Mar 4, 2023
b1452f9
Reduce frequency of periodic jobs
mandre Mar 4, 2023
81540a7
Make TestMTUNetworkCRUDL deterministic
mandre Mar 14, 2023
228df1a
CI: workaround mongodb dependency for messaging and clustering master…
mandre Mar 7, 2023
51f2469
Merge pull request #2464 from OpenSource-THG/keystone-limits-create
mandre Mar 17, 2023
a4e4849
Add Get operation
emilmaruszczak Dec 29, 2022
e855edc
objects: Add some validation to BulkDelete
pierreprinetti Mar 22, 2023
f282ec4
objects: Add optimised BulkDelete function
pierreprinetti Mar 22, 2023
8c9fc9e
RELEASE.md: List PRs from last release
pierreprinetti Mar 28, 2023
7220520
Prepare v1.3.0
pierreprinetti Mar 28, 2023
330f72e
[swift v1]: Add TempURLKey and Digest arguments for objects.CreateTem…
kayrus Mar 30, 2023
6e0b5ea
Merge pull request #2602 from kayrus/custom-tempurl-key
mandre Mar 31, 2023
b51908f
Bump mheap/github-action-required-labels from 3 to 4
dependabot[bot] Apr 3, 2023
58b1c67
objects: Cleanup, remove benchmarks
pierreprinetti Mar 22, 2023
1a2963b
Merge pull request #2589 from gophercloud/dependabot/github_actions/E…
mandre Apr 9, 2023
db1a729
Merge pull request #2604 from gophercloud/dependabot/github_actions/m…
mandre Apr 9, 2023
e5cad99
Merge pull request #2597 from shiftstack/bulk_delete_objects
mandre Apr 9, 2023
3afba9d
Drop train and ussuri jobs
mandre Apr 9, 2023
7137f08
Merge pull request #2608 from shiftstack/retire-train-ussuri
pierreprinetti Apr 17, 2023
d01baca
Add PUT for indentity/v3/OS-INHERIT
nikParasyr Apr 28, 2023
e149528
Add HEAD to identity/v3/OS-INHERIT
nikParasyr Apr 28, 2023
e34f968
Add DELETE for identity/v3/OS-INHERIT
nikParasyr Apr 28, 2023
17d4dac
Merge pull request #2596 from OpenSource-THG/keystone-limits-get
mandre May 12, 2023
7e94efb
Fix typos and add validation tests
nikParasyr May 14, 2023
894ad9d
Merge pull request #2610 from nikParasyr/os-inherit
mandre May 15, 2023
4f9320f
Add Update operation
emilmaruszczak Dec 29, 2022
f41487e
Merge pull request #2465 from OpenSource-THG/keystone-limits-update
mandre May 16, 2023
44ddb19
Pin goimport dep to a version that works with go 1.14
mandre May 17, 2023
33412be
Merge pull request #2620 from shiftstack/unit_tests_1-14
pierreprinetti May 17, 2023
d2075f0
Consistently set OS_BRANCH in acceptance tests
mandre May 17, 2023
72f853b
Require OS_BRANCH variable to be set for tests that need it
mandre May 17, 2023
88c3d40
Merge pull request #2619 from shiftstack/fix_version_comparison_accep…
mandre May 22, 2023
23b9b15
Add CRUD support register limit APIs
konan-abhi May 10, 2023
c8549f4
Merge pull request #2616 from konan-abhi/registered_limits
mandre May 23, 2023
710abfc
Add Delete operation
emilmaruszczak Dec 29, 2022
96aaa4a
Assert succesfull deletion
emilmaruszczak May 17, 2023
bfbaf66
Add the ability to remove ingress/egress policies from fwaas_v2 groups
Koodt May 19, 2023
90aba41
Merge pull request #2618 from OpenSource-THG/keystone-limits-delete
mandre May 23, 2023
7097b89
neutron: Support trunk_details extension
mdbooth May 19, 2023
0bda0ef
Limits: Fix ToDo to create registered limit and use it
konan-abhi May 23, 2023
e448e89
Add upstream neutron bug for trunk_details
mdbooth May 24, 2023
b9730cf
Merge pull request #2627 from konan-abhi/use-registered-limits
mandre May 24, 2023
2e1ab9b
[manila]: Add share from snapshot restore functional test
kayrus May 24, 2023
e44b175
Merge pull request #2628 from shiftstack/trunk_details
mandre May 25, 2023
93ee654
Merge pull request #2629 from kayrus/manila-share-from-snapshot-size
mandre May 25, 2023
5e9b773
Merge pull request #2623 from Koodt/fwaas_v2_add_policies_removing_fr…
mandre May 25, 2023
4f66d10
Update changelog for new release
mandre May 25, 2023
56edd8a
Bump version
mandre May 25, 2023
6e1423b
Merge pull request #2630 from shiftstack/prepare-1.4.0
pierreprinetti May 25, 2023
8316e78
baremetal: update inspection inventory with recent additions
dtantsur May 25, 2023
2bee9ba
Add FWaaS_v2 workflow.
Koodt May 30, 2023
4257931
Remove unused overrides
Koodt May 30, 2023
4019c76
Rename networking to fwaas_v2
Koodt May 30, 2023
1df5e7d
Exclude fwaas_v2 from networking workflow acceptance tests filter
Koodt May 30, 2023
86ed770
Implement errors.Unwrap() on unexpected status code errors
pierreprinetti Jun 2, 2023
b5d1d3a
baremetal: fix a typo in SystemFirmwareType
dtantsur Jun 6, 2023
b2e7bc0
Merge pull request #2634 from dtantsur/inventory-additions
mandre Jun 6, 2023
0df6b3f
Merge pull request #2639 from shiftstack/expose_response_body
mandre Jun 6, 2023
8323112
Disabled devstack services move to enabled_services
Koodt Jun 7, 2023
eea885c
Workflow: add antelope, enabled_plugins move to conf_overrides
Koodt Jun 8, 2023
0140149
Workflow: disable neutron-fwaas-dashboard
Koodt Jun 8, 2023
16409dc
Bump mheap/github-action-required-labels from 4 to 5
dependabot[bot] Jun 9, 2023
3fec48d
Merge pull request #2643 from gophercloud/dependabot/github_actions/m…
pierreprinetti Jun 9, 2023
14d31d3
[manila]: Add Share Replicas support
kayrus May 26, 2023
fa800fc
Merge pull request #2635 from kayrus/manila-replicas
mandre Jun 14, 2023
44d55f0
Merge pull request #2637 from Koodt/fwaas_v2_add_tests_workflow
mandre Jun 14, 2023
f25ec5f
Fix some share replicas comments and introduce ExtractReplicasInto call
kayrus Jun 14, 2023
c779dc2
[manila]: implement share transfer API
kayrus Jun 14, 2023
1f574bb
Merge pull request #2648 from kayrus/share-transfer
mandre Jun 21, 2023
19c426d
Prepare release v1.5.0
pierreprinetti Jun 20, 2023
efb556a
Merge pull request #2650 from shiftstack/prepare_v1.5.0
mandre Jun 21, 2023
a0b5dd4
[v1][CI] Drop periodic jobs from stable branch
mandre Jul 6, 2023
b277c7b
Merge pull request #2675 from shiftstack/drop-periodics
EmilienM Jul 6, 2023
0a5bb2b
[v1] Remove the Ensure labels workflow
mandre Jul 10, 2023
457c1cf
[v1] Allow running 'CodeQL' job for non-master branches
mandre Jul 10, 2023
2d1a32f
[v1] Update Readme
mandre Jul 10, 2023
81071d2
Merge pull request #2683 from shiftstack/v1-jobs
EmilienM Jul 10, 2023
73dd87c
README: minor change to test backport workflow
EmilienM Aug 1, 2023
283c721
Merge pull request #2712 from gophercloud/bp-v1-235ddb2
mandre Aug 2, 2023
b1d38dd
tests: run MultiAttach with a capable Cinder Type
EmilienM Jun 28, 2023
7ac6bef
Add CRUD support for encryption in volume v3 types
Jun 7, 2023
8353428
fixup: Correct some acceptance test errors
Jun 12, 2023
7192499
fixup: Correct some unit test errors
Jun 20, 2023
d2f09a0
Merge pull request #2713 from gophercloud/bp-v1-cf6531e
mandre Aug 2, 2023
90064d7
Add projectID to fwaas_v2 policy CreateOpts and ListOpts
nikParasyr Jun 29, 2023
f81b744
Add projectID to fwaas_v2 CreateOpts
nikParasyr Jun 29, 2023
b94e2f7
Merge pull request #2714 from gophercloud/bp-v1-a365a68-8d2245e-2267522
mandre Aug 2, 2023
bf9a309
[manila]: add reset and force delete actions to a snapshot
kayrus Jul 12, 2023
b42636b
[cinder]: add reset and force delete actions to volumes and snapshots
kayrus Jul 17, 2023
64a94da
Merge pull request #2716 from gophercloud/bp-v1-7cf90c2
mandre Aug 2, 2023
30816de
Merge pull request #2715 from gophercloud/bp-v1-86bd244
mandre Aug 2, 2023
aee7da1
Merge pull request #2717 from gophercloud/bp-v1-514b0d8
mandre Aug 2, 2023
8a825ba
Merge pull request #2718 from gophercloud/bp-v1-223eac3
mandre Aug 2, 2023
705c648
orchestration: Explicit error in optionsmap creation
pierreprinetti Dec 2, 2022
37e8bbf
Merge pull request #2721 from gophercloud/bp-v1-699db20
mandre Aug 8, 2023
1f3de53
Add conductor API to Baremetal V1
Aug 7, 2023
0fe4b1b
Add conductor API to Baremetal V1
Aug 7, 2023
9697b21
Add get conductor acceptance test
Aug 8, 2023
c6bdb0f
Merge pull request #2723 from gophercloud/bp-v1-b3e4b64-8e4c755-6ff19a7
EmilienM Aug 15, 2023
45e856e
networking/v2/ports: allow list filter by security group
EmilienM Aug 21, 2023
51b35b4
Merge pull request #2729 from gophercloud/bp-v1-e767be1
EmilienM Aug 25, 2023
8539531
Prepare release v1.6.0
pierreprinetti Aug 30, 2023
224322e
workflow: remove semver-require
EmilienM Aug 29, 2023
4605b53
Merge pull request #2739 from gophercloud/bp-v1-8d7fc3c
pierreprinetti Aug 30, 2023
ad3cf7a
Merge pull request #2738 from shiftstack/v1
EmilienM Aug 30, 2023
f826aed
Add Github Workflow for checking Go API compatibility on PRs
EmilienM Nov 18, 2022
8fe63e9
Bump actions/setup-go from 2 to 4
dependabot[bot] Aug 29, 2023
8bc2f1a
Bump actions-ecosystem/action-add-labels from 1.1.0 to 1.1.3
dependabot[bot] Aug 29, 2023
d8ced84
workflow/semver-auto: rebase PR
EmilienM Aug 30, 2023
c3db85a
CI: Fix a typo in semver-auto
EmilienM Sep 1, 2023
0df624b
semver-auto: remove labels first
EmilienM Sep 1, 2023
9841cac
semver-auto: manual rebase instead of external action
EmilienM Sep 1, 2023
a0dde24
semver-auto: tell who we are during rebase
EmilienM Sep 5, 2023
a300a0e
Merge pull request #2760 from EmilienM/backports_autolabels
pierreprinetti Sep 6, 2023
0297174
Fix typos in comments
pierreprinetti Sep 8, 2023
48897e2
Merge pull request #2775 from gophercloud/bp-v1-142078c
pierreprinetti Sep 12, 2023
b47ab2f
Add tag field to compute block_device_v2
Sep 14, 2023
18940e4
Add requests test for new field
Sep 14, 2023
9fc151e
acceptance/compute: remove flavor ID check
EmilienM Sep 20, 2023
4ecebfb
Add acceptance tests for tag field to compute block_device_v2
EmilienM Sep 20, 2023
7eb68c1
acceptance/volumeattachment: don't specify Connector
EmilienM Sep 7, 2023
dafbcd8
ci/functional: switch LIO target instead of tgt
EmilienM Sep 7, 2023
a96ae3d
ci/functional: add `antelope` release in the matrix
EmilienM Sep 6, 2023
8126d0a
ci/functional: reduce LOC
EmilienM Sep 6, 2023
5ac547f
ci/functional: switch master jobs to run on ubuntu 22.04
EmilienM Sep 5, 2023
23e5dbd
Merge pull request #2783 from EmilienM/backport_ci_fix
mandre Sep 22, 2023
5bf280d
Merge pull request #2782 from EmilienM/backport_tag_volume
mandre Sep 22, 2023
2aab79d
Acceptance: Rename IsReleasesBelow() and IsReleasesAbove()
mandre Sep 7, 2023
e5568fe
Acceptance: Fix IsCurrentBelow and IsCurrentAbove functions
mandre Sep 7, 2023
d7d4aac
ci/semver-auto: return a failure only when needed
EmilienM Sep 7, 2023
27c2a3f
Fix semver-auto
EmilienM Sep 8, 2023
fc1b8fc
Merge pull request #2785 from gophercloud/bp-v1-8a3a10b-5819dc0
EmilienM Sep 22, 2023
b024625
Merge pull request #2787 from EmilienM/backport_label_fix
EmilienM Sep 22, 2023
5871a11
Make acceptance tests internal
mandre Sep 22, 2023
39c2b02
Fix acceptancetest script when running without argument
mandre Sep 22, 2023
d462f04
Merge pull request #2788 from gophercloud/bp-v1-6f31881-7bec78e
EmilienM Sep 22, 2023
4f4a056
Prepare 1.7.0
EmilienM Sep 22, 2023
1ef3b08
Merge pull request #2789 from EmilienM/release_1.7.0
EmilienM Sep 25, 2023
80b7ede
ci/unit: switch to coverallsapp/github-action
EmilienM Oct 4, 2023
964ece5
Fix options initialization in ServiceClient.Request (fixes #2798)
dtantsur Oct 6, 2023
90af7a3
Merge pull request #2800 from gophercloud/bp-v1-0f4a9ff
mandre Oct 9, 2023
18c74db
Merge pull request #2796 from gophercloud/bp-v1-65b80e5
mandre Oct 9, 2023
8d0b6da
Add job for bobcat stable/2023.2
iurygregory Oct 6, 2023
3f854fa
Merge pull request #2802 from gophercloud/bp-v1-529f0a2
mandre Oct 16, 2023
c71fc9d
Make fixtures part of tests
mandre Oct 16, 2023
105f33c
Merge pull request #2814 from shiftstack/fixtures-internal
pierreprinetti Oct 17, 2023
fc46027
Test files alongside code
mandre Oct 20, 2023
1eb4586
Merge pull request #2819 from gophercloud/bp-v1-019424e
mandre Oct 22, 2023
04f05f1
Add more godoc to GuestFormat
EmilienM Oct 24, 2023
5b77f04
Merge pull request #2823 from gophercloud/bp-v1-902ed6e
EmilienM Oct 24, 2023
3df6ee5
Allow objects.CreateTempURL with names containing '/v1/'
pierreprinetti Oct 25, 2023
5dd227b
Merge pull request #2826 from shiftstack/tempurl_v1
EmilienM Oct 26, 2023
ccfa81e
unit tests: Fix the installation of tools
pierreprinetti Nov 30, 2023
f8d6f33
Merge pull request #2840 from shiftstack/fix_v1_unittests
EmilienM Nov 30, 2023
796aba1
Prepare the v1.8.0 release
pierreprinetti Nov 30, 2023
05b77af
Merge pull request #2839 from shiftstack/prepare_v1.8.0
pierreprinetti Nov 30, 2023
95a9036
Fix devstack install on EOL magnum branches
mandre Jan 1, 2024
3c68a0f
Fix networking acceptance tests
mandre Jan 1, 2024
e707ba8
TestPortsbindingCRUD: Fix order of arguments in equal assertions
mandre Jan 1, 2024
511095e
Merge pull request #2857 from gophercloud/bp-v1-9379f86-ada7a8b
pierreprinetti Jan 2, 2024
d39d40c
Merge pull request #2856 from gophercloud/bp-v1-26b668e
pierreprinetti Jan 2, 2024
5e72743
build(deps): bump actions/upload-artifact from 3 to 4
dependabot[bot] Dec 15, 2023
f361ee3
build(deps): bump github/codeql-action from 2 to 3
dependabot[bot] Dec 14, 2023
197cedf
Merge pull request #2859 from gophercloud/bp-v1-6992699
pierreprinetti Jan 2, 2024
00c2107
Merge pull request #2858 from gophercloud/bp-v1-c433929
pierreprinetti Jan 2, 2024
9cfe594
feat: add AvailabilityZone for db/v1/instance
zhekazuev Jan 18, 2024
51831d9
Merge pull request #2875 from gophercloud/bp-v1-74052e2
EmilienM Jan 19, 2024
ef06ea2
Context-aware methods to ProviderClient and ServiceClient
pierreprinetti Jan 31, 2024
84073f4
Add support of Flavor for Octavia
Pyjou Feb 28, 2023
7dd55c3
Add support of FlavorProfile for Octavia
Pyjou Feb 28, 2023
2d6994b
Merge pull request #2884 from shiftstack/context-v1
pierreprinetti Feb 2, 2024
18fcc98
Merge pull request #2887 from gophercloud/bp-v1-5259ac4-34a7c13
EmilienM Feb 2, 2024
bb3f61b
Prepare v1.9.0
EmilienM Feb 2, 2024
28518d6
Merge pull request #2888 from shiftstack/v1
pierreprinetti Feb 2, 2024
b0d7555
tokens: Add WithContext functions
pierreprinetti Feb 2, 2024
b8f25bc
client: Add WithContext functions
pierreprinetti Feb 2, 2024
2dbf414
pager: Add WithContext functions
pierreprinetti Feb 2, 2024
c15850d
Merge pull request #2893 from gophercloud/bp-v1-40e1664-c9b54ab
pierreprinetti Feb 5, 2024
9c47cb0
Merge pull request #2894 from gophercloud/bp-v1-30b0cb7
pierreprinetti Feb 5, 2024
22c5682
Authenticate with a clouds.yaml
pierreprinetti Jan 29, 2024
e3f126e
Merge pull request #2899 from gophercloud/bp-v1-d7e07ae
EmilienM Feb 8, 2024
af248d5
clouds: fix default /etc/openstack/clouds.yaml selection
vooon Feb 13, 2024
018a079
clouds: export ParseOption to allow conditionally compose With* opts
vooon Feb 13, 2024
195d9f6
Merge pull request #2917 from gophercloud/bp-v1-ef5fd4a-5d62d9c
EmilienM Feb 13, 2024
ac7c64d
build(deps): bump EmilienM/devstack-action from 0.11 to 0.14
pierreprinetti Feb 12, 2024
53ee602
Merge pull request #2924 from gophercloud/bp-v1-6747962
EmilienM Feb 15, 2024
ac1ecd4
Fix AllowReauth reauthentication
pierreprinetti Feb 20, 2024
fce8d74
Merge pull request #2933 from shiftstack/fix_reauth_v1
EmilienM Feb 21, 2024
3323f81
compute: Use volumeID, not attachmentID for volume attachments
stephenfin Feb 21, 2024
ab57a44
Merge pull request #2950 from shiftstack/issue-2861
EmilienM Feb 27, 2024
e317258
Prepare v1.10.0
pierreprinetti Feb 27, 2024
5b44c45
Merge pull request #2952 from shiftstack/prepare_v1.10.0
pierreprinetti Feb 27, 2024
16b3cd5
Revert "Fix AllowReauth reauthentication"
pierreprinetti Mar 6, 2024
fbfac92
Revert "clouds: export ParseOption to allow conditionally compose Wit…
pierreprinetti Mar 6, 2024
52d12ec
Revert "clouds: fix default /etc/openstack/clouds.yaml selection"
pierreprinetti Mar 6, 2024
da1523b
Revert "Authenticate with a clouds.yaml"
pierreprinetti Mar 6, 2024
2e1a5f8
Revert "pager: Add WithContext functions"
pierreprinetti Mar 6, 2024
4bd4c38
Revert "client: Add WithContext functions"
pierreprinetti Mar 6, 2024
6046211
Revert "tokens: Add WithContext functions"
pierreprinetti Mar 6, 2024
322ccdf
Revert "Context-aware methods to ProviderClient and ServiceClient"
pierreprinetti Mar 6, 2024
f7678f8
Prepare v1.11.0
pierreprinetti Mar 6, 2024
4a0303d
Merge pull request #2971 from shiftstack/remove_context
pierreprinetti Mar 6, 2024
ab6cdcf
update live migrate api with microversion 2.25
Jul 28, 2021
bc3fd0b
octavia: add DomainName and HTTPVersion on monitors (added in 2.10)
Nov 18, 2021
fd16f46
add barbican quota implementation
Dec 27, 2021
08ab2cd
endpoint groups feature: add list, get & association
gcnathan Jan 13, 2022
ba49285
add network_type and segmentation_id to network creation options
Jan 14, 2022
cb7bfde
Set healthmonitor domain name optional
chuliang Jun 27, 2022
e60c9b3
Fix BareMetalV1 version (#16)
mdelord Oct 7, 2022
6dd1c8b
feat(identity): add create, update and delete endpoint group
reenjii Jan 16, 2023
260e25a
feat(identity): add get endpoint by ID
reenjii Jan 16, 2023
2cf1c8a
Add NetworkType and SegmentationID filters when list networks
chuliang Sep 2, 2022
a05ca57
add loadbalancer additional vips feature
Jul 19, 2023
57fbca2
add manila quotasets
Mar 13, 2024
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
117 changes: 74 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
@@ -13,7 +13,7 @@ Gophercloud is an OpenStack Go SDK.

Reference a Gophercloud package in your code:

```Go
```go
import "github.com/gophercloud/gophercloud"
```

@@ -28,43 +28,79 @@ go mod tidy
### Credentials

Because you'll be hitting an API, you will need to retrieve your OpenStack
credentials and either store them as environment variables or in your local Go
files. The first method is recommended because it decouples credential
information from source code, allowing you to push the latter to your version
control system without any security risk.
credentials and either store them in a `clouds.yaml` file, as environment
variables, or in your local Go files. The first method is recommended because
it decouples credential information from source code, allowing you to push the
latter to your version control system without any security risk.

You will need to retrieve the following:

* username
* password
* a valid Keystone identity URL
* A valid Keystone identity URL
* Credentials. These can be a username/password combo, a set of Application
Credentials, a pre-generated token, or any other supported authentication
mechanism.

For users that have the OpenStack dashboard installed, there's a shortcut. If
you visit the `project/access_and_security` path in Horizon and click on the
"Download OpenStack RC File" button at the top right hand corner, you will
download a bash file that exports all of your access details to environment
variables. To execute the file, run `source admin-openrc.sh` and you will be
prompted for your password.
you visit the `project/api_access` path in Horizon and click on the
"Download OpenStack RC File" button at the top right hand corner, you can
download either a `clouds.yaml` file or an `openrc` bash file that exports all
of your access details to environment variables. To use the `clouds.yaml` file,
place it at `~/.config/openstack/clouds.yaml`. To use the `openrc` file, run
`source openrc` and you will be prompted for your password.

### Authentication

> NOTE: It is now recommended to use the `clientconfig` package found at
> https://github.com/gophercloud/utils/tree/master/openstack/clientconfig
> for all authentication purposes.
>
> The below documentation is still relevant. clientconfig simply implements
> the below and presents it in an easier and more flexible way.

Once you have access to your credentials, you can begin plugging them into
Gophercloud. The next step is authentication, and this is handled by a base
"Provider" struct. To get one, you can either pass in your credentials
explicitly, or tell Gophercloud to use environment variables:
Gophercloud. The next step is authentication, which is handled by a base
"Provider" struct. There are number of ways to construct such a struct.

**With `gophercloud/utils`**

The [github.com/gophercloud/utils](https://github.com/gophercloud/utils)
library provides the `clientconfig` package to simplify authentication. It
provides additional functionality, such as the ability to read `clouds.yaml`
files. To generate a "Provider" struct using the `clientconfig` package:

```go
import (
"github.com/gophercloud/utils/openstack/clientconfig"
)

// You can also skip configuring this and instead set 'OS_CLOUD' in your
// environment
opts := new(clientconfig.ClientOpts)
opts.Cloud = "devstack-admin"

provider, err := clientconfig.AuthenticatedClient(opts)
```

A provider client is a top-level client that all of your OpenStack service
clients derive from. The provider contains all of the authentication details
that allow your Go code to access the API - such as the base URL and token ID.

Once we have a base Provider, we inject it as a dependency into each OpenStack
service. For example, in order to work with the Compute API, we need a Compute
service client. This can be created like so:

```go
client, err := clientconfig.NewServiceClient("compute", opts)
```

**Without `gophercloud/utils`**

> *Note*
> gophercloud doesn't provide support for `clouds.yaml` file so you need to
> implement this functionality yourself if you don't wish to use
> `gophercloud/utils`.

You can also generate a "Provider" struct without using the `clientconfig`
package from `gophercloud/utils`. To do this, you can either pass in your
credentials explicitly or tell Gophercloud to use environment variables:

```go
import (
"github.com/gophercloud/gophercloud"
"github.com/gophercloud/gophercloud/openstack"
"github.com/gophercloud/gophercloud/openstack/utils"
"github.com/gophercloud/gophercloud"
"github.com/gophercloud/gophercloud/openstack"
)

// Option 1: Pass in the values yourself
@@ -85,34 +121,29 @@ Once you have the `opts` variable, you can pass it in and get back a
provider, err := openstack.AuthenticatedClient(opts)
```

The `ProviderClient` is the top-level client that all of your OpenStack services
derive from. The provider contains all of the authentication details that allow
your Go code to access the API - such as the base URL and token ID.

### Provision a server

Once we have a base Provider, we inject it as a dependency into each OpenStack
service. In order to work with the Compute API, we need a Compute service
client; which can be created like so:
As above, you can then use this provider client to generate a service client
for a particular OpenStack service:

```go
client, err := openstack.NewComputeV2(provider, gophercloud.EndpointOpts{
Region: os.Getenv("OS_REGION_NAME"),
Region: os.Getenv("OS_REGION_NAME"),
})
```

We then use this `client` for any Compute API operation we want. In our case,
we want to provision a new server - so we invoke the `Create` method and pass
in the flavor ID (hardware specification) and image ID (operating system) we're
interested in:
### Provision a server

We can use the Compute service client generated above for any Compute API
operation we want. In our case, we want to provision a new server. To do this,
we invoke the `Create` method and pass in the flavor ID (hardware
specification) and image ID (operating system) we're interested in:

```go
import "github.com/gophercloud/gophercloud/openstack/compute/v2/servers"

server, err := servers.Create(client, servers.CreateOpts{
Name: "My new server!",
FlavorRef: "flavor_id",
ImageRef: "image_id",
Name: "My new server!",
FlavorRef: "flavor_id",
ImageRef: "image_id",
}).Extract()
```