有人可以请给我一个lombok @SuperBuilder实验注释的工作实例吗?
我无法让它运行,并且没有可用文档的代码示例.
目前我的代码如下所示:
超类:
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "type")
@JsonSubTypes({
@JsonSubTypes.Type(value = SubA.class),
@JsonSubTypes.Type(value = AnotherSub.class)
})
@Getter
@Accessors(fluent = true, chain = true)
@SuperBuilder
public abstract class AbstractA {
@JsonProperty
protected final String superProperty;
}
Run Code Online (Sandbox Code Playgroud)
而子类:
@Getter
@EqualsAndHashCode(callSuper = true)
@Accessors(fluent = true, chain = true)
@SuperBuilder
@JsonDeserialize(builder = SubA.SubABuilder.class) // class not found?
@JsonTypeName("SubA")
public class SubA extends AbstractA {
@JsonProperty
private final String fieldA;
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我有一个单页应用程序,我想在不同的 gcp 项目中托管它,即不同的 firebase 项目。
部署应该持续到我的 firebase 托管,我想分开持续构建和持续部署步骤,因此我不想从我的本地机器手动部署到我的所有 firebase 项目。
当我不想从本地机器部署时,是否有部署到 Firebase 托管项目的最佳实践?
以我天真的方式,我将设置以下内容:
我需要构建一个 zip 文件,其中包含所有静态 html 和 js 文件以及我上传到存储桶的 firebase.json 和 .firebaserc 文件。有了这些文件,firebaseCLI 工具就可以执行firebase deploy --only hosting:mytarget. 谷歌云构建器可以在 git push(例如来自 github.com)上运行这个命令,它知道我想要将单页应用程序部署到的所有 gcp 项目......
然而,这是很多工作,也许有一个更好的解决方案。我试图将 gs:// 链接直接放到 firebase.json 托管/公共部分,但是 firebase CLI 无法识别(它需要一个本地文件夹):-(
{
"hosting": [
{
"target": "mySPAApp",
"public" : "gs://mystorage-containing-files-for-hosting/",
"rewrites": [
{
"source": "apps/myapp/**",
"destination": "myapp/index.html"
}]
}
]
}
Run Code Online (Sandbox Code Playgroud)
我的直觉是,必须有一种更简单的方法,甚至可以使用gcloudCLI 将一堆文件部署到 Firebase 托管。在 firebase 内部,功能应该与此类似,因为在 …
google-cloud-storage firebase google-cloud-platform firebase-hosting
我的设置包含以 google-cloud-functions 作为后端的 google-endpoints。
Google 端点使用以下 swagger v2 yaml 定义:
swagger: "2.0"
info:
description: "yada..."
version: "0.0.1"
title: "yadada.."
termsOfService: "http://swagger.io/terms/"
contact:
name: "blah"
email: "email@mail.com"
url: "https://example.com"
host: "(generated service url by google when endpoints is deployed, i.e. 'api-gateway-xyz123123-ew.a.run.app')"
tags:
- name: "Documents"
description: "blah"
schemes:
- "https"
paths:
/api/documents:
post:
tags:
- "Documents"
summary: "Add a new document"
description: ""
security:
- firebase: []
operationId: "addDocument"
x-google-backend:
address: "(cloud functions http url)/documents"
consumes:
- "application/json"
produces:
- "application/json" …Run Code Online (Sandbox Code Playgroud) google-cloud-endpoints google-cloud-platform google-cloud-functions
我想在我的 github 操作工作流程中使用 github 组织机密,但无法使其正常工作。
Github 于 5 月 14 日发布了该新功能 ( https://github.blog/changelog/2020-05-14-organization-secrets/ )。当然,我阅读了文档并添加了一个新的组织范围的秘密(在https://github.com/organizations/(myOrganization)/settings/secrets上)。秘密“存储库访问”设置为“私有存储库”。
我使用了之前在 4 个私有存储库中使用的相同秘密名称。这些存储库的工作流程以这种方式使用秘密:
- uses: actions-hub/gcloud@master
env:
PROJECT_ID: ${{ env.ARTIFACT_PROJECT }}
APPLICATION_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }}
CLI: gsutil
with:
args: cp ....
Run Code Online (Sandbox Code Playgroud)
当我“覆盖”每个项目中的组织秘密时,访问通过${{secrets.GOOGLE_CREDENTIALS}}起作用(这是组织秘密功能发布之前的情况)。
当我删除项目秘密时,秘密不存在并产生空值。
有人遇到同样的问题并且知道如何解决吗?