# README
go-sdk-core
This project contains the core functionality used by Go SDK's generated by the IBM OpenAPI 3 SDK Generator (openapi-sdkgen). Go code generated by openapi-sdkgen will depend on the function contained in this project.
Installation
Get SDK package:
go get -u github.com/IBM/go-sdk-core/...
Authentication Types
There are several flavors of authentication supported in this package. To specify the intended authentication pattern to use, the user can pass in the parameter AuthenticationType
. This parameter is optional, but it may become required in a future major release. The options for this parameter are basic
, iam
, and icp4d
.
basic
This indicates Basic Auth is to be used. Users will pass in a username
and password
and the SDK will generate a Basic Auth header to send with requests to the service.
iam
This indicates that IAM token authentication is to be used. Users can pass in an IAMApiKey
or an IAMAccessToken
. If an API key is used, the SDK will manage the token for the user. In either case, the SDK will generate a Bearer Auth header to send with requests to the service.
icp4d
This indicates that the service is an instance of ICP4D, which has its own version of token authentication. Users can pass in a username
and password
, or a ICP4DAccessToken
.
If a username and password is given, the SDK will manage the token for the user, and the ICP4DURL
option must be passed in.
Issues
If you encounter an issue with this project, you are welcome to submit a bug report. Before opening a new issue, please search for similar issues. It's possible that someone has already reported it.
Tests
Run all test suites:
go test ./...
Get code coverage for each test suite:
go test -coverprofile=coverage.out ./...
go tool cover -html=coverage.out
Contributing
See CONTRIBUTING.
License
This library is licensed under Apache 2.0. Full license text is available in LICENSE.