thousands-tomato-60851
06/10/2023, 12:40 AMError putting S3 policy: AccessDenied: Access Denied
. The thing is the IAM user has been granted full s3 access permission, which includes PutS3Policy. And then I tried our root user credential, still the same. Is there anything I did wrong? Thanks.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as awsx from "@pulumi/awsx";
const bucket = new aws.s3.Bucket("my-bucket");
const bucketMetric = new aws.s3.BucketMetric("my-bucket-metric", {
bucket: bucket.bucket,
});
const bucketNotification = new aws.s3.BucketNotification(
"my-bucket-notification",
{
bucket: bucket.bucket,
}
);
const bucketObject = new aws.s3.BucketObject("my-bucket-object", {
bucket: bucket.bucket,
content: "hello world",
});
const bucketPolicy = new aws.s3.BucketPolicy("my-bucket-policy", {
bucket: bucket.bucket,
policy: bucket.bucket.apply(publicReadPolicyForBucket),
});
function publicReadPolicyForBucket(bucketName: string) {
return JSON.stringify({
Version: "2012-10-17",
Statement: [
{
Effect: "Allow",
Principal: "*",
Action: ["s3:GetObject"],
Resource: [
`arn:aws:s3:::${bucketName}/*`, // policy refers to bucket name explicitly
],
},
],
});
}
// Export the name of the bucket
export const bucketName = bucket.id;
able-camera-57198
06/10/2023, 2:16 PMicy-controller-6092
06/12/2023, 2:44 AMpulumi:providers:pulumi-nodejs default error: pulumi-nodejs (resource) plugin [/opt/homebrew/bin/pulumi-resource-pulumi-nodejs] wrote a non-numeric port to stdout ('0'): strconv.Atoi: parsing "\x1b[33m64263\x1b[39m": invalid syntax
mysterious-hairdresser-82060
06/12/2023, 9:24 PMStackReference
, or will that break? I am trying to Create a Snowflake External Storage Integration using an AWS IAM Role, and they need to reference each other. Ideally, we would keep our Snowflake and AWS resources in separate stacks. Thanks!straight-arm-50771
06/13/2023, 12:24 AMpulumi config set aws:profile my-aws-profile
?
Pulumi.my-stack.yaml :
config:
aws:profile: my-aws-profile
gcp:project: my-gcp-profile
or would we need to set this as a second param?brief-car-60542
06/13/2023, 5:56 AMadorable-summer-21974
06/13/2023, 8:28 AMgreen-kilobyte-86931
06/13/2023, 1:51 PMmany-knife-65312
06/13/2023, 5:19 PMfresh-scientist-56300
06/13/2023, 6:00 PMthankful-musician-15476
06/13/2023, 8:25 PMnumerous-toddler-24038
06/13/2023, 11:26 PMfaint-father-49077
06/14/2023, 4:22 AM--engine-mode
and --allow-engine-mode-change
parameters in modify-db-cluster
(I have confirmed this works via the CLI).
If I change my aws.rds.Cluster's engineMode
value from "serverless" to "provisioned" and try a pulumi up
, the process fails ("DB Cluster already exists") as it tries to replace the cluster.
There doesn't seem to be an equivalent to the allow-engine-mode-change
parameter in the aws.rds.Cluster definition in the Pulumi documentation.
I am using Pulumi version 3.70.0.white-balloon-205
lemon-monkey-228
06/14/2023, 9:26 AMPulumi.<stack>.yaml
) change every time you (re)create the project state, and is there a way to keep this static?
I'm using the password secrets provider and I recreate the state to spin up a local lab, but this is causing a load of needless changes in gitprehistoric-piano-40714
06/14/2023, 3:35 PMdeleteBeforeReplace
in a Crosswalk resource (e.g., awsx.ecs.FargateService
)? It's not included in ResourceOptions
, and it's not clear if I can pass CustomResourceOptions
somehow. (I'm prototyping with AWS EFS and Fargate and running into problems with multiple Prometheus containers not being able to share the EFS volume.)bulky-kite-69343
06/14/2023, 4:20 PMcalm-queen-58154
06/14/2023, 4:53 PMfierce-xylophone-92490
06/14/2023, 8:33 PMimport pulumi_github as github
from my_module import GithubRepo # a dataclass with repo configuration
def _create_repo(repo_config: GithubRepo) -> github.Repository:
repo = github.Repository(
resource_name=repo_config.name,
name=repo_config.name,
archive_on_destroy=True,
description=repo_config.description,
visibility="private",
)
if repo_config.actions_variables:
create_actions_variables(actions_variables=repo_config.actions_variables, repo_name=repo.name)
if repo_config.actions_secrets:
create_actions_secrets(action_secrets=repo_config.actions_secrets, repo_name=repo.name)
for env in repo_config.environments:
create_environment(env, repo_name=repo.name)
create_repository_teams(admin_teams=repo_config.admin_teams, repo_name=repo.name)
return repo
bitter-france-47214
06/14/2023, 8:44 PMbrave-angle-33257
06/14/2023, 9:52 PMhandsome-judge-45093
06/14/2023, 9:56 PMpulumi convert --from terraform --language go --out pulumi
Converting from terraform...
Downloading provider: terraform
Downloading provider: kubernetes
warning: failed to install provider "helm": could not find latest version for provider helm: 404 HTTP error fetching plugin from <https://api.github.com/repos/pulumi/pulumi-helm/releases/latest>. If this is a private GitHub repository, try providing a token via the GITHUB_TOKEN environment variable. See: <https://github.com/settings/tokens>
there are more errors after that which are related to helm provider config. Nothing fancy in providers.tf in terraform though:
provider "kubernetes" {
host = data.aws_eks_cluster.cluster.endpoint
token = data.aws_eks_cluster_auth.cluster.token
cluster_ca_certificate = base64decode(data.aws_eks_cluster.cluster.certificate_authority.0.data)
}
provider "helm" {
kubernetes {
host = data.aws_eks_cluster.cluster.endpoint
token = data.aws_eks_cluster_auth.cluster.token
cluster_ca_certificate = base64decode(data.aws_eks_cluster.cluster.certificate_authority.0.data)
}
}
thankful-musician-15476
06/14/2023, 11:31 PMimageName = <http://gcr.io/xxxxx/my-app:dd173278046fcc735e6bd5f884a42ace408775b3aea38431aafe9267a46647ba|gcr.io/xxxxx/my-app:dd173278046fcc735e6bd5f884a42ace408775b3aea38431aafe9267a46647ba>
v4: imageName = <http://gcr.io/xxxxx/my-app|gcr.io/xxxxx/my-app>
With this change, the resources that depend on the Docker image don’t get updated whenever the docker image is updated. That also breaks many of the examples provided by Pulumi that involve deploying a docker image to the cloud.
Is that intentional or it’s a bug?average-lamp-65631
06/15/2023, 7:16 AMbumpy-agent-19616
06/15/2023, 11:45 AMworried-arm-83283
06/15/2023, 3:50 PMlemon-father-61958
06/15/2023, 6:23 PMlimited-farmer-68874
06/15/2023, 6:23 PMPulumi.yaml
file VS what should just be defined in code.
It seems like the docs recommend that you'd want to have things defined in your Pulumi.yaml
config the stuff that is likely to vary between versions of your stack (e.g. development VS production). Okay, reasonable enough.
However, I'm struggling with the proper way to structure this. I was hoping to have something like this in my Project-level config:
project:mysql-instance:
description: MySQL instance
value:
name: my-db
version: MYSQL_8_0
disk-size: 10
availability: REGIONAL
tier: db-custom-1-3840
and then something like this in my Stack-level config:
project:mysql-instance:
availability: ZONAL
To have a lower availability level in my dev environment. Unfortunately, it seems that this wipes out the entire mysql-instance
config rather than just overwriting a single value.
Are there any recommendations on how to achieve something like this? The only way I can think of is to ditch structured configuration values and have every single configuration option that would vary between stack as a top-level attribute in your config -- but that doesn't scale at all, you'll soon have hundreds of top-level properties in your config and it will be extremely challenging to figure out what corresponds to what.little-cartoon-10569
06/15/2023, 9:45 PMpulumi stack init
, pulumi stack select
and pulumi stack tag set ...
. I'm now trying pulumi preview
(or pulumi up
) but the CLI is giving me this error message:
error: getting stack configuration: stack configuration could not be loaded from either Pulumi.yaml or the backend: no previous deployment
This is new to me. Does anyone know what causes it? Or where in the code I might find this, so I can figure it out?wet-sunset-4939
06/16/2023, 1:19 AM