我部署的最后一个 CDK Pipeline 遇到了困难。
我已按照此处的步骤操作:https://docs.aws.amazon.com/cdk/latest/guide/cdk_pipeline.html,总体体验非常痛苦。首先,我必须手动更新 S3 存储桶策略,以让管道从存储桶中读取/写入它,否则我会收到拒绝访问 403 错误。
该部分似乎已解决,但现在,在“UpdatePipeline”阶段,我收到以下错误消息:Error: No stack found matching 'PTPipelineStack'. Use "list" to print manifest,显然,堆栈存在于 CloudFormation 中,如果我cdk list从 CLI 运行命令,我确实会看到 PTPipelineStack。我已经破坏了管道并重新部署了几次“以防万一”,但并没有真正帮助。有什么建议可以帮助解决这个问题吗?
bin/file.ts:
#!/usr/bin/env node
import * as cdk from '@aws-cdk/core'
import 'source-map-support/register'
import { MyPipelineStack } from '../lib/build-pipeline'
const app = new cdk.App()
const pipelineStack = new MyPipelineStack(app, 'PTPipelineStack', {
env: {
account: 'xxxxxxxxxxxx',
region: 'eu-west-1',
},
})
app.synth()
Run Code Online (Sandbox Code Playgroud)
lib/build-pipeline.ts:
import * as codepipeline from '@aws-cdk/aws-codepipeline'
import * as …Run Code Online (Sandbox Code Playgroud) 我正在尝试获取云函数来创建将调用云函数的云任务。简单的。
流程和用例与官方教程非常接近。
我还查看了 Doug Stevenson 的这篇文章,特别是其中的安全部分。
16 (UNAUTHENTICATED)不幸的是,我在 Cloud Task 中不断收到错误。
如果我可以相信我在控制台中看到的内容,那么 Cloud Task 似乎没有将 OIDC 令牌附加到请求中:
然而,在我的代码中我确实有这个oidcToken对象:
const { v2beta3, protos } = require("@google-cloud/tasks");
import {
PROJECT_ID,
EMAIL_QUEUE,
LOCATION,
EMAIL_SERVICE_ACCOUNT,
EMAIL_HANDLER,
} from "./../config/cloudFunctions";
export const createHttpTaskWithToken = async function (
payload: {
to_email: string;
templateId: string;
uid: string;
dynamicData?: Record<string, any>;
},
{
project = PROJECT_ID,
queue = EMAIL_QUEUE,
location = LOCATION,
url = EMAIL_HANDLER,
email = EMAIL_SERVICE_ACCOUNT,
} = {} …Run Code Online (Sandbox Code Playgroud) service-accounts google-cloud-platform google-cloud-functions google-iam google-cloud-tasks
我正在使用 Cloud Build 基于 Github 触发器设置基本管道,但遇到以下错误:
Your build failed to run: generic::failed_precondition: generic::failed_precondition: no concurrent builds quota available to create builds
我检查了:
Requested entity was not found,这让我认为这是一个错误的假设,因此不会造成麻烦。我的 cloudbuild.json 仅供参考:
{
"steps": [
{
"name": "gcr.io/cloud-builders/docker",
"args": [
"build",
"-t",
"europe-west2-docker.pkg.dev/${PROJECT_ID}/REPONAME/front-end:${COMMIT_SHA}",
"."
]
}
],
"options": {
"logging": "CLOUD_LOGGING_ONLY"
}
}
Run Code Online (Sandbox Code Playgroud)
任何想法?
谢谢,
这是一个后续后/问题提出的问题在这里,以防万一这可能会派上用场别人.
自第一篇文章以来,我一直在尝试并尝试部署其他结构略有不同的应用程序.
最后,我设法在Beanstalk上成功部署,直到我错误地将带有pip freeze> requirements.txt的uuid包添加到我的requirements.txt并部署它.
然后,再次完全相同的错误.回滚并从.txt中删除uuid然后变得无用,因为似乎一旦venv被"损坏",就没有办法让环境回到正轨.
我尝试了几个命令,例如这里描述的命令和下面列出的命令删除包但它不起作用.与venv的任何交互都会返回原始帖子中描述的错误.
测试命令:
pip3 uninstall uuid==1.30
pip3.4 uninstall uuid==1.30
pip3 uninstall uuid
pip3.4 uninstall uuid
我发现前进的唯一方法是启动新环境并重新部署.哪个不太令人满意......
谁会知道如何在这种情况下删除uuid和/或在保持相同环境的同时解决问题?
谢谢,
STF
python amazon-web-services python-3.x amazon-elastic-beanstalk
我在使用 Firebase 作为 Open ID Connect 提供商时遇到了困难。您能否进一步描述一下您在完成这项工作之前和之后所经历的步骤?
有关信息,以下是我到目前为止所做的操作:在 AWS 控制台中:
1 - 创建 IAM 身份提供商 ( OpenID Connect ) 并用作受众的securetoken.google.com/<FIREBASE_PROJECT_ID>URL<FIREBASE_PROJECT_ID>
2 - 手动检查指纹(它与 AWS 生成的指纹匹配)
3 - 创建具有访问所需服务权限的角色
4 - 在 Cognito 中创建了一个身份池,并在“经过身份验证的角色”下拉列表中选择了我新创建的角色
5 - 在身份验证提供程序 > OpenID 类别下选择我的身份提供程序(因此格式为):securetoken.google.com/<FIREBASE_PROJECT_ID>
在我的代码(我使用 Vue.js)中,以下是我经历的逻辑步骤:
导入/设置AWS SDK
调用 Firebase 身份验证服务
问题是我不断收到“配置中缺少凭据”错误。
代码:
import axios from 'axios';
const AWS = require('aws-sdk');
AWS.config.region = 'eu-west-1';
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'MY_COGNITO_POOL_ID',
});
export default …Run Code Online (Sandbox Code Playgroud) amazon-web-services amazon-iam amazon-cognito aws-sdk firebase-authentication