小编Vov*_*van的帖子

Github 操作不适用于 GCP。403:权限“iam.serviceAccounts.getAccessToken”被拒绝

我正在尝试创建一个 GithubAction 作业,该作业应通过身份联合在 GCP 中进行身份验证并将一些文件上传到存储桶。

是 GitHub Action 的完整源代码。

在这项工作中,我有这样一个不起作用的步骤:

    - id: 'auth'
      name: 'Authenticate to Google Cloud'
      uses: 'google-github-actions/auth@v1'
      with:
        workload_identity_provider: 'projects/736194043976/locations/global/workloadIdentityPools/my-pool/providers/my-provider'
        service_account: 'githubsa@learning-words-trial.iam.gserviceaccount.com'
        token_format: 'access_token'
Run Code Online (Sandbox Code Playgroud)

不幸的是,它失败并出现 403 错误:

Error: google-github-actions/auth failed with: retry function failed after 1 attempt: failed to generate Google Cloud access token for githubsa@learning-words-trial.iam.gserviceaccount.com: (403) {
  "error": {
    "code": 403,
    "message": "Permission 'iam.serviceAccounts.getAccessToken' denied on resource (or it may not exist).",
    "status": "PERMISSION_DENIED",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.ErrorInfo",
        "reason": "IAM_PERMISSION_DENIED",
        "domain": "iam.googleapis.com",
        "metadata": { …
Run Code Online (Sandbox Code Playgroud)

google-cloud-platform github-actions

12
推荐指数
1
解决办法
1万
查看次数

两列弹性框布局

我需要创建布局,其中包含两列中的项目列表.就像我在下面展示的:

.container {
  border: 1px solid red;
  height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.item {
  border: 1px dashed blue;
  height: 50px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="container">
  <div class="item">1</div>
  <div class="item">2</div>
  <div class="item">3</div>
  <div class="item">4</div>
  <div class="item">5</div>
  <div class="item">6</div>
  <div class="item">7</div>
  <div class="item">8</div>
</div>
Run Code Online (Sandbox Code Playgroud)
但是这种布局存在问题.如果只有一个项目 - 它将占用全宽.即使有一些项目,我也需要保留列.

html css css3 flexbox

11
推荐指数
2
解决办法
1万
查看次数

配置spring boot以将404重定向到单个页面应用程序

我想配置我的Spring Boot应用程序,将任何404未找到的请求重定向到我的单页应用程序.

例如,如果我正在调用localhost:8080/asdasd/asdasdasd/asdasd哪个不存在,则应该重定向到localhost:8080/notFound.

问题是我有一个单页反应应用程序,它在根路径中运行localhost:8080/.所以春天应该重定向到localhost:8080/notFound然后前进/(保持路线).

spring spring-mvc single-page-application spring-boot

9
推荐指数
3
解决办法
2万
查看次数

Maven,访问被拒绝:http://repo1.maven.org/maven2

我刚刚下载了Maven的最新版本.

而当我想跑

mvn archetype:generate

我收到错误消息

[警告]读取原型目录时出错 http://repo1.maven.org/maven2 org.apache.maven.wagon.authorization.AuthorizationException:访问被拒绝:http: //repo1.maven.org/maven2,De reasonPhrase:拒绝访问.在org.apache.maven.wagon.shared.http4.AbstractHttpClientWagon.fillInputData(AbstractHttpClientWagon.java:928)在org.apache.maven.wagon.StreamWagon.getInputStream(StreamWagon.java:116)在org.apache.maven.wagon .StreamWagon.getIfNewer(StreamWagon.java:88)在org.apache.maven.wagon.StreamWagon.get(StreamWagon.java:61)在org.apache.maven.archetype.source.RemoteCatalogArchetypeDataSource.downloadCatalog(RemoteCatalogArchetypeDataSource.java:119 )在org.apache.maven.archetype.source.RemoteCatalogArchetypeDataSource.getArchetypeCatalog(RemoteCatalogArchetypeDataSource.java:87)在org.apache.maven.archetype.DefaultArchetypeManager.getRemoteCatalog(DefaultArchetypeManager.java:216)在org.apache.maven.archetype. DefaultArchetypeManager.getRemoteCatalog(DefaultArchetypeManager.java:205)在org.apache.maven.archetype.ui.generation.DefaultArchetypeSelector.getArchetypesByCatalog(DefaultArchetypeSelector.java:200)在org.apache.maven.archetype.ui.generation.DefaultArchetypeSelector.selectArchetyp E(DefaultArchetypeSelector.java:71)在org.apache.maven.archetype.mojos.CreateProjectFromArchetypeMojo.execute(CreateProjectFromArchetypeMojo.java:197)在org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)在有机位于org.apache.maven.lifecycle.internal的org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)的.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) .MojoExecutor.execute(MojoExecutor.java:145)org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java) :59)在org.apache的org.apache.maven.life.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161). org.apache.maven.Defa上的maven.DefaultMaven.doExecute(DefaultMaven.java:320)org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)的ultMaven.execute(DefaultMaven.java:156)org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)org .apache.maven.cli.MavenCli.main(MavenCli.java:141)在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)在sun.reflect.NativeMethodAccessorImpl.invoke(来源不明)在sun.reflect.DelegatingMethodAccessorImpl.invoke(来自org.codehaus.plexus.classworlds.launcher.Launcher的org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)的java.lang.reflect.Method.invoke(未知来源)的未知来源.launch(Launcher.java:230)org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) )[警告]在远程目录中找不到原型.默认为内部目录[INFO]未定义原型.使用maven-archetype-quickstart(org.apache.maven.archetypes:maven-archetype-quickstart:1.0)

我没有代理和互联网工作正常.防火墙已关闭.如何解决这个问题呢 ?

谢谢你的帮助.

如果我们查看类org.apache.maven.wagon.shared.http4.AbstractHttpClientWagon 方法fillInputData(InputData inputData),我们可以看到:

public void fillInputData( InputData inputData )
       throws TransferFailedException, ResourceDoesNotExistException,AuthorizationException
    {
     ....
 HttpResponse response;
     ....
 statusCode = response.getStatusLine().getStatusCode();
     ....
 switch ( statusCode )
        {
            case HttpStatus.SC_OK:
                break;

            case HttpStatus.SC_NOT_MODIFIED:
                // return, leaving last modified set to original value so getIfNewer should return unmodified
                return;

            case SC_NULL:
            {
                TransferFailedException e =
                    new TransferFailedException( "Failed to …
Run Code Online (Sandbox Code Playgroud)

java compilation build maven

8
推荐指数
2
解决办法
3万
查看次数

更改PowerShell中第一个输入单词的颜色

我想将第一个控制台语句的颜色从黄色更改为另一种颜色,因为它在白色背景上看起来很糟糕.我怎样才能做到这一点 ? 在此输入图像描述

在此输入图像描述

powershell

7
推荐指数
2
解决办法
1727
查看次数

如何减少babel-polyfill尺寸(150 KB缩小)?

我只是设置了新的webpack 4项目,并在我的主js文件中导入了babel-polyfill

import 'babel-polyfill';

在webpack生产构建之后,我用source-map-explorer我看到这样的图片来分析我的bandle在此输入图像描述

所以babel-polyfill(core-js)需要150 Kb,这是IMO太多了.

有什么想法我怎么能减小尺寸?我不想包含任何特定的polyfills(应该有一些树抖动,所以不应该删除未使用的代码?).

我使用这个样板:https://github.com/flexdinesh/react-redux-boilerplate/tree/master/config

javascript babel webpack babel-polyfill webpack-4

7
推荐指数
1
解决办法
1405
查看次数

如何确定浏览器是否支持js pushState函数?

我想通过js脚本使用动态URL更新:

window.history.pushState("string", "Title", "/new-url");
Run Code Online (Sandbox Code Playgroud)

但是如果浏览器是旧的并且不支持此功能,那么它应该只是重定向到新的URL.

有没有简单的方法来检查它?

html javascript

5
推荐指数
3
解决办法
2163
查看次数

Glassfish计划(计时器)例外

我正在尝试在Glassfish 4和java EE7上重复本教程.所以我用Netbeans中的maven创建了简单的WebApp.

我创建了简单的类:

import java.util.Date;
import javax.ejb.Schedule;
import javax.ejb.Stateless;

@Stateless
public class NewClass {

    @Schedule(minute = "*/1", hour = "*",persistent = false) 
    public void anyMethod() {
        System.out.println("hello "+new Date());
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当我向应用程序deploing应用程序时,我得到此异常:

Info:   EJB5181:Portable JNDI names for EJB NewClass: [java:global/WebApplication1/NewClass, java:global/WebApplication1/NewClass!NewClass]
Severe:   Exception while invoking class org.glassfish.ejb.startup.EjbApplication start method
java.lang.RuntimeException: EJB Timer Service is not available
    at com.sun.ejb.containers.BaseContainer.startApplication(BaseContainer.java:3951)
    at org.glassfish.ejb.startup.EjbApplication.start(EjbApplication.java:163)
    at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
    at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
    at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:497)
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
    at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
    at …
Run Code Online (Sandbox Code Playgroud)

java ejb glassfish java-ee

5
推荐指数
2
解决办法
9291
查看次数

EventSource 重新连接时某些服务器发送的事件丢失

在我们的应用程序中,我们有 SSE 连接,生存时间为 5 分钟,5 分钟后服务器关闭连接,客户端自动重新连接。

\n\n

但这里的问题是:当客户端重新连接时,后端可能发生了一些事件,并且它不会传递到SSE连接,因为它\xe2\x80\x99s尚未建立。

\n\n

所以有一些 1-2 秒的时间段我们可能会丢失事件。

\n\n

我们该如何处理这个案子?你有什么意见 ?

\n\n

在我看来,我们只有一个选择:每次 SSE 重新连接后,在服务器上执行额外的 GET 请求来刷新数据。

\n

javascript server-sent-events eventsource

5
推荐指数
1
解决办法
6552
查看次数

是否可以将microk8s设置为使用docker引擎而不是containerd?

首先,我不是容器编排工具方面的专家。

我刚刚根据指南 安装了microk8s :https: //microk8s.io/docs/

如果我运行microk8s kubectl get nodes,我会看到我的节点实际上正在运行containerd引擎。

我的应用程序构建过程设置为生成 docker 文件并自动创建 docker 映像,因此我希望 microk8s 也使用 docker。

我用的是minikube,现在决定尝试一下microk8s。现在我有点困惑,也许从一开始就坚持使用 docker 是个坏主意?

是否可以为microk8s设置docker引擎?


我以前从未使用过 contains,并且我不知道如何为我的应用程序准备 contains 图像。这就是我问的原因。

docker kubernetes containerd microk8s

5
推荐指数
1
解决办法
5973
查看次数