Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package golang-oldstable-image for 
openSUSE:Factory checked in at 2024-05-29 19:36:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/golang-oldstable-image (Old)
 and      /work/SRC/openSUSE:Factory/.golang-oldstable-image.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "golang-oldstable-image"

Wed May 29 19:36:16 2024 rev:13 rq:1177509 version:unknown

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/golang-oldstable-image/golang-oldstable-image.changes
    2024-05-08 11:42:32.662923443 +0200
+++ 
/work/SRC/openSUSE:Factory/.golang-oldstable-image.new.24587/golang-oldstable-image.changes
 2024-05-29 19:37:00.250991677 +0200
@@ -1,0 +2,5 @@
+Tue May 28 12:13:17 UTC 2024 - Alexandre Vicenzi <alexandre.vice...@suse.com>
+
+- Extend README.md
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ README.md ++++++
--- /var/tmp/diff_new_pack.D4EQk9/_old  2024-05-29 19:37:00.835012813 +0200
+++ /var/tmp/diff_new_pack.D4EQk9/_new  2024-05-29 19:37:00.839012957 +0200
@@ -1,8 +1,75 @@
-# The openSUSE Tumbleweed BCI Go 1.21 development Container Image
+# Go 1.21 development Container Image
+
 ![Redistributable](https://img.shields.io/badge/Redistributable-Yes-green)
 
 
-Go 1.21 development container based on the openSUSE Tumbleweed Base Container 
Image.
+## Description
+
+[Go](https://go.dev/) (a.k.a., Golang) is a statically-typed programming 
language, with syntax loosely derived from C. Go offers additional features 
such as garbage collection, type safety, certain dynamic-typing capabilities, 
additional built-in types (for example, variable-length arrays and key-value 
maps) as well as a large standard library.
+
+## Usage
+
+To compile and deploy an application, copy the sources, fetch dependencies 
(assuming go.mod is used for dependency management), and build the binary:
+
+```Dockerfile
+# Build the application using the Go 1.21 development Container Image
+FROM registry.opensuse.org/opensuse/bci/golang:1.21 as build
+
+WORKDIR /app
+
+# pre-copy/cache go.mod for pre-downloading dependencies and only 
redownloading them in subsequent builds if they change
+COPY go.mod go.sum ./
+RUN go mod download && go mod verify
+
+COPY . ./
+
+# Make sure to build the application with CGO disabled.
+# This will force Go to use some Go implementations of code
+# rather than those normally supplied by the host operating system.
+# You need this for scratch images as those supporting libraries
+# are not available.
+RUN CGO_ENABLED=0 go build -o /hello
+
+# Bundle the application into a scratch image
+FROM scratch
+
+COPY --from=build /hello /hello
+
+CMD ["/hello"]
+```
+
+Build and run the container image:
+
+```ShellSession
+$ podman build -t my-golang-app .
+$ podman run -it --rm my-golang-app
+```
+
+There are situations when you don't want to run an application inside a 
container.
+
+To compile the application, without running it inside a container instance, 
use the following command:
+
+```ShellSession
+$ podman run --rm -v "$PWD":/app:Z -w /app 
registry.opensuse.org/opensuse/bci/golang:1.21 go build -v
+```
+
+To run the application tests inside a container, use the following command:
+
+```ShellSession
+$ podman run --rm -v "$PWD":/app:Z -w /app 
registry.opensuse.org/opensuse/bci/golang:1.21 go test -v
+```
+
+**Note:** The Golang image should be used as a build environment. For runtime, 
self-contained Go binaries should use a `scratch` image and for applications 
that require external dependencies use the `bci-base` image.
+
+## Additional tools
+
+The following additional tools are included in the image:
+
+- go1.21-race
+- make
+- git-core
+
+
 
 ## Licensing
 `SPDX-License-Identifier: MIT`

Reply via email to