[ https://issues.apache.org/jira/browse/JCLOUDS-1464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Gaul resolved JCLOUDS-1464. ---------------------------------- Resolution: Fixed Assignee: Andrew Gaul Fix Version/s: 2.1.2 2.2.0 > Google Cloud Storage regions need updating > ------------------------------------------ > > Key: JCLOUDS-1464 > URL: https://issues.apache.org/jira/browse/JCLOUDS-1464 > Project: jclouds > Issue Type: Improvement > Components: jclouds-blobstore > Affects Versions: 2.1.1 > Reporter: Chris Bailey > Assignee: Andrew Gaul > Priority: Major > Labels: google-cloud-storage > Fix For: 2.2.0, 2.1.2 > > > Initially I was seeing the issue reported here > [https://jira.apache.org/jira/browse/JCLOUDS-1419] > I updated to the 2.1.2 snapshot, which resolved that issue, but exposed > another. Now it seems that the regions are not in sync with what is actually > available from GCS. Here is what I get: > {quote}java.lang.IllegalArgumentException: No enum constant > org.jclouds.googlecloudstorage.domain.DomainResourceReferences.Location.US-WEST2 > at java.lang.Enum.valueOf(Enum.java:238) > at > org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:41) > at > org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:32) > at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58) > at > org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$ParameterReader.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:273) > at > org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:185) > at > org.jclouds.googlecloud.config.ListPageAdapterFactory$ListPageAdapter.readItems(ListPageAdapterFactory.java:73) > at > org.jclouds.googlecloud.config.ListPageAdapterFactory$ListPageAdapter.read(ListPageAdapterFactory.java:56) > at > org.jclouds.googlecloud.config.ListPageAdapterFactory$ListPageAdapter.read(ListPageAdapterFactory.java:36) > at com.google.gson.Gson.fromJson(Gson.java:861) > at com.google.gson.Gson.fromJson(Gson.java:826) > at org.jclouds.json.internal.GsonWrapper.fromJson(GsonWrapper.java:55) > at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:82) > at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:76) > at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:61) > at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:41) > at > org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:91) > at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:74) > at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:45) > at > org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117) > at > com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87) > at com.sun.proxy.$Proxy54.listBucket(Unknown Source) > at > org.jclouds.googlecloudstorage.blobstore.GoogleCloudStorageBlobStore.list(GoogleCloudStorageBlobStore.java:119) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37) > at com.sun.proxy.$Proxy51.list(Unknown Source) > {quote} > > So it seems that the default region that GCS assigned to my regional bucket > (US-WEST2) is not supported. Can confirm that if I select US-WEST1 as my > region when defining the bucket, all works as expected. > Here is a list of supported regions > [https://cloud.google.com/storage/docs/bucket-locations] > While the Location enum does not include all of them: > [https://github.com/jclouds/jclouds/blob/master/providers/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/domain/DomainResourceReferences.java] > These are the ones that appear to be missing: > US_WEST2, EU_NORTH, ASIA_EAST2 > > > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)