Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

samples/guestbook/localdb/main.go: add docker platform flag #3450

Merged
merged 1 commit into from
Jul 14, 2024

Conversation

samlaf
Copy link
Contributor

@samlaf samlaf commented Jul 13, 2024

Code didn't run on my m1 macbook pro, getting

$ go run localdb/main.go
go: downloading gopkg.in/pipe.v2 v2.0.0-20140414041502-3c2ca4d52544
localdb: Starting container running MySQL
Unable to find image 'mysql:5.6' locally
docker: Error response from daemon: no match for platform in manifest: not found.
See 'docker run --help'.
localdb: running [docker run --rm --env MYSQL_DATABASE=guestbook --env MYSQL_ROOT_PASSWORD=password --detach --publish 3306:3306 mysql:5.6]: exit status 125:
exit status 1

That's because mysql:5.6 only had a linux/amd64 image (https://hub.docker.com/layers/library/mysql/5.6/images/sha256-897086d07d1efa876224b147397ea8d3147e61dd84dce963aace1d5e9dc2802d?context=explore). Adding the platform flag tells docker to download it anyways, even on a mac.

I always use this trick but honestly not sure why amd64 images run on m1 chips. Maybe there's no meaningful difference? Maybe its because of Rosetta? Or maybe I'll eventually hit a bug because some features are not available when running on different arch?

Please use a title starting with the name of the affected package, or "all",
followed by a colon, followed by a short summary of the issue. Example:
blob/gcsblob: fix typo in documentation.

Please reference any Issue related to this Pull Request. Example: Fixes #1.

See
here
for tips on good Pull Request description.

Code didn't run on my m1 macbook pro, getting
```
$ go run localdb/main.go
go: downloading gopkg.in/pipe.v2 v2.0.0-20140414041502-3c2ca4d52544
localdb: Starting container running MySQL
Unable to find image 'mysql:5.6' locally
docker: Error response from daemon: no match for platform in manifest: not found.
See 'docker run --help'.
localdb: running [docker run --rm --env MYSQL_DATABASE=guestbook --env MYSQL_ROOT_PASSWORD=password --detach --publish 3306:3306 mysql:5.6]: exit status 125:
exit status 1
```

That's because mysql:5.6 only had a linux/amd64 image (https://hub.docker.com/layers/library/mysql/5.6/images/sha256-897086d07d1efa876224b147397ea8d3147e61dd84dce963aace1d5e9dc2802d?context=explore). Adding the platform flag tells docker to download it anyways, even on a mac. 

I always use this trick but honestly not sure why amd64 images run on m1 chips. Maybe there's no meaningful difference? Maybe its because of Rosetta? Or maybe I'll eventually hit a bug because some features are not available when running on different arch?
@samlaf samlaf changed the title guestbook/localdb/main.go: to add docker platform flag guestbook/localdb/main.go: add docker platform flag Jul 13, 2024
@samlaf samlaf changed the title guestbook/localdb/main.go: add docker platform flag samples/guestbook/localdb/main.go: add docker platform flag Jul 13, 2024
Copy link

codecov bot commented Jul 14, 2024

Codecov Report

Attention: Patch coverage is 0% with 1 line in your changes missing coverage. Please review.

Project coverage is 73.37%. Comparing base (0a37d2f) to head (4cfae61).

Files Patch % Lines
samples/guestbook/localdb/main.go 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #3450      +/-   ##
==========================================
- Coverage   73.38%   73.37%   -0.01%     
==========================================
  Files         113      113              
  Lines       14956    14957       +1     
==========================================
  Hits        10975    10975              
- Misses       3207     3208       +1     
  Partials      774      774              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@vangent vangent merged commit fc42ff3 into google:master Jul 14, 2024
5 checks passed
renovate bot added a commit to open-feature/flagd that referenced this pull request Sep 11, 2024
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [gocloud.dev](https://redirect.github.com/google/go-cloud) | `v0.37.0`
-> `v0.39.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/gocloud.dev/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/gocloud.dev/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/gocloud.dev/v0.37.0/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/gocloud.dev/v0.37.0/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>google/go-cloud (gocloud.dev)</summary>

###
[`v0.39.0`](https://redirect.github.com/google/go-cloud/releases/tag/v0.39.0)

[Compare
Source](https://redirect.github.com/google/go-cloud/compare/v0.38.0...v0.39.0)

#### BREAKING CHANGE (AWS only, V1 vs V2 SDK)

Context: AWS has [announced maintenance
mode](https://aws.amazon.com/blogs/developer/announcing-end-of-support-for-aws-sdk-for-go-v1-on-july-31-2025/)
for the Go V1 SDK.

Go CDK has changed the default SDK for URLs across all modules except
`docstore/awsdynamodb` to be V2 (previously you needed to add
`awssdk=v2` to the URL to get V2). Most URLs should continue to work,
but in some cases you may need to add `awssdk=v1` to force V1
explicitly.

Also, concrete type constructors (e.g., `OpenBucket`) for V1 (again,
except `docstore/awsdynamodb`) have been marked deprecated; please
migrate to using the V2 versions (e.g., `OpenBucketV2`).

Our tentative plan is to remove support for V1 in early 2025; please
[file a
bug](https://redirect.github.com/google/go-cloud/issues/new/choose) if
you have concerns about that.

#### What's Changed

- pubsub: Make batch request results independent by
[@&#8203;mitsos1os](https://redirect.github.com/mitsos1os) in
[google/go-cloud#3457
- docstore/all: Add support for boolean filter by
[@&#8203;ybourgery](https://redirect.github.com/ybourgery) in
[google/go-cloud#3464
- aws/all: Mark V1 constructors deprecated. by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[google/go-cloud#3466
- aws/all: Change the default for AWS URLs from V1 to V2. by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[google/go-cloud#3465
- all: update to go version 1.23 by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[google/go-cloud#3467

#### New Contributors

- [@&#8203;mitsos1os](https://redirect.github.com/mitsos1os) made their
first contribution in
[google/go-cloud#3457
- [@&#8203;dependabot](https://redirect.github.com/dependabot) made
their first contribution in
[google/go-cloud#3448

**Full Changelog**:
google/go-cloud@v0.38.0...v0.39.0

###
[`v0.38.0`](https://redirect.github.com/google/go-cloud/releases/tag/v0.38.0)

[Compare
Source](https://redirect.github.com/google/go-cloud/compare/v0.37.0...v0.38.0)

**blob**

- **all**: Fix panics if reader recreation fails after Seek by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[google/go-cloud#3425
- **all**: Convert errors in `Open()` into appropriate fs errors by
[@&#8203;milescrabill](https://redirect.github.com/milescrabill) in
[google/go-cloud#3443
- **s3blob**: Fix Copy to work with keys that need escaping by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[google/go-cloud#3403
- **azureblob**: Do not panic if Content-Length and Content-Range are
missing by [@&#8203;chancez](https://redirect.github.com/chancez) in
[google/go-cloud#3445
- **fileblob**: Allow customization of the FileMode by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[google/go-cloud#3426

**pubsub**

- **awssnssqs**: Add support for setting FIFO message metadata by
[@&#8203;bartventer](https://redirect.github.com/bartventer) in
[google/go-cloud#3435
- **kafkapubsub**: Configuring key_name when OpenTopicURL by
[@&#8203;ssetin](https://redirect.github.com/ssetin) in
[google/go-cloud#3404
- **rabbitpubsub**: Add query string set the qos prefetch count by
[@&#8203;peczenyj](https://redirect.github.com/peczenyj) in
[google/go-cloud#3431
- **rabbitpubsub**: Add query string to set the routing key from
metadata by [@&#8203;peczenyj](https://redirect.github.com/peczenyj) in
[google/go-cloud#3433
- **rabbitpubsub**: Wrap pubsub rabbitmq errors by
[@&#8203;peczenyj](https://redirect.github.com/peczenyj) in
[google/go-cloud#3437

**docstore**

- **all**: Fix offset handling and extend test coverage by
[@&#8203;bartventer](https://redirect.github.com/bartventer) in
[google/go-cloud#3409
- **awsdynamodb**: Ensure Next returns EOF when no more items by
[@&#8203;bartventer](https://redirect.github.com/bartventer) in
[google/go-cloud#3406
- **mongodocstore**: Update Mongo dialer when MONGO_SERVER_URL rotates
by [@&#8203;concaf](https://redirect.github.com/concaf) in
[google/go-cloud#3429

#### New Contributors

- [@&#8203;ssetin](https://redirect.github.com/ssetin) made their first
contribution in
[google/go-cloud#3404
- [@&#8203;concaf](https://redirect.github.com/concaf) made their first
contribution in
[google/go-cloud#3429
- [@&#8203;peczenyj](https://redirect.github.com/peczenyj) made their
first contribution in
[google/go-cloud#3431
- [@&#8203;chancez](https://redirect.github.com/chancez) made their
first contribution in
[google/go-cloud#3445
- [@&#8203;milescrabill](https://redirect.github.com/milescrabill) made
their first contribution in
[google/go-cloud#3443
- [@&#8203;samlaf](https://redirect.github.com/samlaf) made their first
contribution in
[google/go-cloud#3450

**Full Changelog**:
google/go-cloud@v0.37.0...v0.38.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/open-feature/flagd).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC43NC4xIiwidXBkYXRlZEluVmVyIjoiMzguNzQuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants