profile
viewpoint
Josh Ghiloni jghiloni @pivotal-cf @pivotalservices United States

jghiloni/BooTOTP 4

A Spring Boot Library for Time-based One Time Password (TOTP) Generation

cloudfoundry-community/go-credhub 1

Go library for interacting with the Credhub API

jghiloni/admin-ui 0

An application for viewing Cloud Foundry metrics and operations data.

jghiloni/atc 0

build scheduler and web interface

jghiloni/bosh-config-resource 0

A Concourse resource plugin for setting bosh cloud-config and runtime-config.

jghiloni/bosh-dns-release 0

BOSH DNS release

jghiloni/buildpack-packager 0

Buildpack Packager

jghiloni/cf-app-attack 0

a cf cli plugin to perf/load test an app ( based on vegeta cli )

PR opened cloudfoundry-community/go-cfclient

Fixes cloudfoundry-community/go-cfclient#162

Updates oauth2 to 9fd604954f58 to support urlencoding of client IDs and client secrets in UAA authorization headers per rfc6749.

+345 -2

0 comment

2 changed files

pr created time in 2 days

issue commentcloudfoundry-community/go-cfclient

Bad credentials when using ClientID and ClientSecret

Seems like uaa was modified to support the oauth spec in https://github.com/cloudfoundry/uaa/commit/6e938eb8f654a50bb57f7aca9cc9ab535631686d

We could probably go back to a newer version of the library to fix issues with special characters in downstream consumers of this library. E.g. https://github.com/bosh-prometheus/cf_exporter/issues/50

Please, let me know if you'd accept a pull request on this or want me to run down some user-space testing to validate.

vChrisR

comment created time in 5 days

issue openedcloudfoundry-community/go-cfclient

Add support for V3 apps using GUID and 'Include'

Hi folks,

I have the case where I'd like to query the following endpoint (see API): /v3/apps?guids=guid0,guid1,...,guidN&include=space,space.organization

So far, the client has no support for the include-primitive and no method for multiple apps via GUID. Would you be open to PR(s) to implement this change, e.g. via a ListV3AppsByGUIDsAndQuery function? Thanks!

created time in 6 days

push eventcloudfoundry-community/go-cfclient

Amber Salome

commit sha 1e7ce55c9a1d5a508a2d8ddcf1ce5e493e3d16f7

Refactor processes pagination for consistency with apps and packages pagination.

view details

Amber Salome

commit sha 8d14d42264d40890f9b4e0b1f0615df10787a895

Fixed broken paging for listing isolation segments.

view details

Amber Salome

commit sha 0cef104a39c1d0e0e65f9a7be6d32401be2bbe63

Reorder isoseg payloads.

view details

Amber Salome

commit sha 20b092cb2a3d49f608ee3eb80c2d3e90e394cc7d

Fix appending duplicate query

view details

push time in 15 days

PR merged cloudfoundry-community/go-cfclient

Reviewers
Paging refactor

Refactor paging of v3 api objects to use the same url parsing function. Also discovered that listing v3 isolation segments was not working properly and added a fix.

+150 -34

2 comments

5 changed files

ambercs

pr closed time in 15 days

pull request commentcloudfoundry-community/go-cfclient

Paging refactor

Looks great, thanks!

ambercs

comment created time in 15 days

Pull request review commentcloudfoundry-community/go-cfclient

Paging refactor

 func (c *Client) GetIsolationSegmentByGUID(guid string) (*IsolationSegment, erro  func (c *Client) ListIsolationSegmentsByQuery(query url.Values) ([]IsolationSegment, error) { 	var iss []IsolationSegment-	requestUrl := "/v3/isolation_segments?" + query.Encode()+	requestURL := "/v3/isolation_segments" + query.Encode()

good catch, thanks!

ambercs

comment created time in 15 days

Pull request review commentcloudfoundry-community/go-cfclient

Paging refactor

 func (c *Client) GetIsolationSegmentByGUID(guid string) (*IsolationSegment, erro  func (c *Client) ListIsolationSegmentsByQuery(query url.Values) ([]IsolationSegment, error) { 	var iss []IsolationSegment-	requestUrl := "/v3/isolation_segments?" + query.Encode()+	requestURL := "/v3/isolation_segments" + query.Encode()

You're appending the query string twice here.

ambercs

comment created time in 15 days

pull request commentcloudfoundry-community/go-cfclient

Paging refactor

@jghiloni @zmb3

ambercs

comment created time in 15 days

PR opened cloudfoundry-community/go-cfclient

Paging refactor

Refactor paging of v3 api objects to use the same url parsing function. Also discovered that listing v3 isolation segments was not working properly and added a fix.

+150 -34

0 comment

5 changed files

pr created time in 15 days

PR opened cloudfoundry-community/go-cfclient

Paging

Fix paging for all V3 calls. Updated the test framework to allow for specifying multiple pages.

+437 -357

0 comment

39 changed files

pr created time in 19 days

issue closedcloudfoundry-community/go-cfclient

Goroutine leakage happening in create_service_instance,create_service_key,update_service_instance,delete_service_instance.

I see there is goroutine leakage. I was performing some operations like create service instance,create service key ,udpate service key , delete service key,delete service instance. I observe following when I did some goroutine profiling - **goroutine profile: total 8 2 @ 0x1032760 0x10420bb 0x1308069 0x105fc71

0x1308068 net/http.(*persistConn).readLoop+0x998 /usr/local/go/src/net/http/transport.go:2032

2 @ 0x1032760 0x10420bb 0x1309343 0x105fc71

0x1309342 net/http.(persistConn).writeLoop+0x122 /usr/local/go/src/net/http/transport.go:2210*

This readLoop and writeLoop goroutines are pilling up.

closed time in a month

rajendragosavi

push eventcloudfoundry-community/go-cfclient

Rajendra Gosavi

commit sha e8daddee3a9746c5155f0fc5b1e1a223c078dd08

closing the response body for service_key operations and service_instance operations (#256) Co-authored-by: Gosavi, Rajendra Jayendra <rajendra.gosavi@ge.com>

view details

push time in a month

PR merged cloudfoundry-community/go-cfclient

closing the response body for service_key operations and service_inst…

Hi, I am using this gocfclient to write production grade applications. I am doing following operations -

  1. Create service instance
  2. Get service instance
  3. Update service instance
  4. Create service-key
  5. Get service-key
  6. Delete service key
  7. Delete service instance

I observed, the goroutines were getting created and not getting cleared. They were pilling up.

following is the goroutine stack trace output.

_2 @ 0x1032760 0x10420bb 0x1308069 0x105fc71 _# 0x1308068 net/http.(*persistConn).readLoop+0x998 /usr/local/go/src/net/http/transport.go:2032

2 @ 0x1032760 0x10420bb 0x1309343 0x105fc71

0x1309342 net/http.(*persistConn).writeLoop+0x122 /usr/local/go/src/net/http/transport.go:2210__

I figured out that, this issue was happening because of not closing the resp body. I made those changes and the issue is fixed. I am observing this over a while. I am rainsing this Pull request with the changes and attaching the screenshot of goroutine profliing.

Screen Shot 2020-05-28 at 5 55 26 PM

+8 -2

1 comment

2 changed files

rajendragosavi

pr closed time in a month

push eventcloudfoundry-community/go-cfclient

Aswin3405

commit sha 4cf7741c18c6d32bc4d5c23abbb6937387300a96

missing method mergeServiceKey added and used in the CreateServiceKey to fill key.Entity (#251)

view details

push time in a month

issue closedcloudfoundry-community/go-cfclient

service-keys missing GUID

func (c *Client) mergeServiceKey(serviceKey ServiceKeyResource) ServiceKey { serviceKey.Entity.Guid = serviceKey.Meta.Guid serviceKey.Entity.CreatedAt = serviceKey.Meta.CreatedAt serviceKey.Entity.UpdatedAt = serviceKey.Meta.UpdatedAt serviceKey.Entity.c = c return serviceKey.Entity }

should be added to service_keys.go and used in CreateServiceKey(). Withouth this, serviceKey.Entity.Guid is empty.

closed time in a month

Aswin3405

push eventcloudfoundry-community/go-cfclient

Mike Carey

commit sha 1b7f8900e59551ed024eb627ae0d3b669a4a81fa

Adds GetStackByGuid function (#234) Co-authored-by: Mike Carey <mcarey@solstice.com>

view details

push time in a month

delete branch cloudfoundry-community/go-cfclient

delete branch : add-delete-droplet

delete time in a month

push eventcloudfoundry-community/go-cfclient

Josh Ghiloni

commit sha d6216d1c8b213cd9228145691b4f9c75298d722f

Add delete droplet method (#271)

view details

push time in a month

delete branch cloudfoundry-community/go-cfclient

delete branch : add-cancel-deployment

delete time in a month

push eventcloudfoundry-community/go-cfclient

Josh Ghiloni

commit sha 542a34e0313afa209a5e5234ab94ec83887e2ef5

Add cancel deployment method (#270)

view details

push time in a month

push eventcloudfoundry-community/go-cfclient

Josh Ghiloni

commit sha 725a67340277a284c3ee0ad4ffb79d85886e7f1f

Remove client interface (#269)

view details

push time in a month

PR merged cloudfoundry-community/go-cfclient

Remove client interface

This interface is hard to maintain and should be removed. Developers can and should create interfaces in their code with the necessary subset of methods for their use case.

+0 -270

0 comment

1 changed file

jghiloni

pr closed time in a month

delete branch cloudfoundry-community/go-cfclient

delete branch : add-create-deployment

delete time in a month

push eventcloudfoundry-community/go-cfclient

Josh Ghiloni

commit sha a6bc0322fcb2ab2bbad4bd979c5a1c8f58760a74

Add create v3 deployment method (#268)

view details

push time in a month

more