Skip to content

feat: add rpm to goreleaser build#320

Open
jason-lynch wants to merge 1 commit intofeat/PLAT-417/systemdfrom
feat/PLAT-459/rpm-packaging
Open

feat: add rpm to goreleaser build#320
jason-lynch wants to merge 1 commit intofeat/PLAT-417/systemdfrom
feat/PLAT-459/rpm-packaging

Conversation

@jason-lynch
Copy link
Copy Markdown
Member

Summary

Adds an RPM output to our goreleaser build.

Testing

To create a test build of the RPM, run:

goreleaser-test-release

This will create a dist directory with release artifacts, including RPMs for both amd64 and arm64.

To install and use the RPM:

sudo su -

dnf install -y epel-release dnf
dnf config-manager --set-enabled crb
dnf update -y --allowerasing
dnf install -y https://dnf.pgedge.com/reporpm/pgedge-release-latest.noarch.rpm
dnf install -y \
      pgedge-postgresql18 \
      pgedge-spock50_18 \
      pgedge-snowflake_18 \
      pgedge-lolor_18 \
      pgedge-postgresql18-contrib \
      pgedge-pgbackrest \
      pgedge-python3-psycopg2 \
      python3-pip
pip install 'patroni[etcd,jsonlogger]==4.1.0'

rpm -i <path to rpm file>

systemctl start pgedge-control-plane.service

From there, you can interact with it as normal, e.g.:

curl http://localhost:3000/v1/cluster/init

Keep in mind that the host ID will default to the machine's short hostname.

To tail the control-plane logs, do:

journalctl -u pgedge-control-plane.service --follow

PLAT-459

Adds an RPM output to our goreleaser build.

To create a test build of the RPM, run:

```sh
goreleaser-test-release
```

This will create a `dist` directory with release artifacts, including
RPMs for both amd64 and arm64.

To install and use the RPM:

```sh
sudo su -

dnf install -y epel-release dnf
dnf config-manager --set-enabled crb
dnf update -y --allowerasing
dnf install -y https://dnf.pgedge.com/reporpm/pgedge-release-latest.noarch.rpm
dnf install -y \
      pgedge-postgresql18 \
      pgedge-spock50_18 \
      pgedge-snowflake_18 \
      pgedge-lolor_18 \
      pgedge-postgresql18-contrib \
      pgedge-pgbackrest \
      pgedge-python3-psycopg2 \
      python3-pip
pip install 'patroni[etcd,jsonlogger]==4.1.0'

rpm -i <path to rpm file>

systemctl start pgedge-control-plane.service
```

From there, you can interact with it as normal, e.g.:

```sh
curl http://localhost:3000/v1/cluster/init
```

Keep in mind that the host ID will default to the machine's short
hostname.

To tail the control-plane logs, do:

```
journalctl -u pgedge-control-plane.service --follow
```

PLAT-459
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 25, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 3d0877de-3798-4368-9c65-ea12a19bcb01

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/PLAT-459/rpm-packaging

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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.

1 participant