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

[BUG] In 1.15.0, git push activites does not work, webhook on push not work #16428

Closed
2 of 6 tasks
duchenpaul opened this issue Jul 14, 2021 · 29 comments · Fixed by #16451
Closed
2 of 6 tasks

[BUG] In 1.15.0, git push activites does not work, webhook on push not work #16428

duchenpaul opened this issue Jul 14, 2021 · 29 comments · Fixed by #16451

Comments

@duchenpaul
Copy link

duchenpaul commented Jul 14, 2021

  • Gitea version (or commit ref): 1.15.0+dev-578-g8464fa15d
  • Git version:
  • Operating system: official docker
  • Database (use [x]):
    • PostgreSQL
    • MySQL
    • MSSQL
    • SQLite
  • Can you reproduce the bug at https://try.gitea.io:
    • Yes (You edit a file commit it, this behavior will not show up in the dashboard, and if you have webhook, it will not trigger)
    • No
  • Log gist:
    Sorry, but I dont see any error/abnormals in logs of gitea.

Description

I upgraded my gitea image to the latest version in dockerhub.
And the webhook no longer works, I found that my git push activities are not presenting in my dashboard.
Looks like the new version gitea totally missed my git push activities.

Action
You push a commit to a repo.

Expected

  • Your commit shows up in the dashboard, like below,
    image

  • The webhook of this repo will be triggered by this push

Actual

  • You can see your commit in the source code page
  • But your commit does not show up in the dashboard
  • The webhook is not triggered

Below is my recordings about that, all I test is to push a commit into the repo, and expect this action to be shown in the dashboad, and demostrate that it works in the older version, and not working in the newest one

Screenshots

good
Git activities works in v1.14.4

bad
Git activities breaks in v1.15.0

@zeripath
Copy link
Contributor

I'm likely being completely dense but I can't for the life of me understand what it is that is not happening when it should and what it is that you're trying to do.

The videos are not that helpful by themselves. Please describe what it is you are doing.

@duchenpaul duchenpaul changed the title In 1.15.0, git push activites does not work, webhoot on push not work [BUG] In 1.15.0, git push activites does not work, webhoot on push not work Jul 14, 2021
@duchenpaul
Copy link
Author

I'm likely being completely dense but I can't for the life of me understand what it is that is not happening when it should and what it is that you're trying to do.

The videos are not that helpful by themselves. Please describe what it is you are doing.

Sorry for the inconvinience, I expanded more details about the issue, if you have any questions, please let me know

@lunny
Copy link
Member

lunny commented Jul 14, 2021

I cannot reproduce this on my local macOS Gitea instance.

@zeripath
Copy link
Contributor

zeripath commented Jul 14, 2021

I suspect that you need to resynchronize the hooks.

Also ensure that your repositories are not being mounted as noexec

@zeripath
Copy link
Contributor

zeripath commented Jul 14, 2021

Your browser is obscuring the most important part of the logs too. When you make the push there should be a call to:

api/internal/hook/pre-receive/:owner/:repo and api/internal/hook/post-receive/:owner/:repo

if that's not there then it's clear that your hooks aren't either being run or are being sent to the wrong place.

@duchenpaul
Copy link
Author

duchenpaul commented Jul 15, 2021

Take a step back, on https://try.gitea.io,
when you push a change, there should be an update to the dashboard, saying :username pushed to :branch_name at :repo_name, like so:
image

I just tried to do so in https://try.gitea.io, there is no such update on my dashboard.
The url is here: https://try.gitea.io/duchenpaul/Hosted

You can see the last commit is Thu, 15 Jul 2021 00:17:11 UTC
image

if you go to my profile, the last update is Wed, 14 Jul 2021 15:52:44 UTC, which the time when the repo was forks, not get updated by my push.
image

@duchenpaul
Copy link
Author

duchenpaul commented Jul 15, 2021

In order to reproduce, please:

  • create/fork a repo in https://try.gitea.io/
  • Push a commit
  • if you have a webhook, check its Recent Deliveries to see if it is triggered

@multicast
Copy link

I can confirm; I have the same behavior in 1.15.0+dev-582-g3dcb3e907

Creating a new repository via UI, copy/paste initial commands and pushing README to master, and UI never shows code, but the introductory message. I veriefied that the data are actually pushed and the bare repository has the "first commit" pushed, but web-UI still displays hint on how to add origin or make first commit.

@duchenpaul
Copy link
Author

@multicast yeah, if you use webhook, it won't trigger

@multicast
Copy link

@duchenpaul no, create repo, git init/touch/add...push, and the repo on the web looks like no push happened. but repositories/user/name.git does contain the commit. there is no special webhook added yet to newly created repo yet.

@Xenolphthalein
Copy link

I can reproduce this issue with a newly created docker instance on 1.15.0 (latest).

  • Create a docker container with 1.15.0 (latest)
  • Go through the basic configuration
  • Configure your ssh key
  • Create a new repository
  • Push to that repository via ssh
  • Find that the repository still shows the Setup Guide in the Web GUI
  • Cloning the repository from the remote to another folder works as expected

If you revert to 1.14.4 everything works as expected.

@multicast
Copy link

multicast commented Jul 15, 2021

I was now on the same journey and confirm :latest tag is buggy and :1.14.4 works.

The database version has been bumped since 1.14.4 several times, what issues I can expect when looking at models/migrations/v178 ... 188.go?

@duchenpaul duchenpaul changed the title [BUG] In 1.15.0, git push activites does not work, webhoot on push not work [BUG] In 1.15.0, git push activites does not work, webhook on push not work Jul 15, 2021
@zeripath
Copy link
Contributor

I can reproduce this issue with a newly created docker instance on 1.15.0 (latest).

  • Create a docker container with 1.15.0 (latest)
  • Go through the basic configuration
  • Configure your ssh key
  • Create a new repository
  • Push to that repository via ssh
  • Find that the repository still shows the Setup Guide in the Web GUI
  • Cloning the repository from the remote to another folder works as expected

If you revert to 1.14.4 everything works as expected.

I just did this and could not reproduce.

@zeripath
Copy link
Contributor

@multicast @Xenolphthalein

When you push do you get logs:

Accepted publickey for git from 172.17.0.1 port 43538 ssh2: RSA SHA256:E5ceuux3vjTud+QasBpODgG7FcZ2HkYvaZ7djOh6EJQ
2021/07/15 16:52:08 Started GET /api/internal/serv/command/1/administrator/empty-repo?mode=2&verb=git-receive-pack for 127.0.0.1:45956
2021/07/15 16:52:08 Completed GET /api/internal/serv/command/1/administrator/empty-repo?mode=2&verb=git-receive-pack 200 OK in 1.120231ms
2021/07/15 16:52:08 Started POST /api/internal/hook/pre-receive/administrator/empty-repo for 127.0.0.1:45958
2021/07/15 16:52:08 Completed POST /api/internal/hook/pre-receive/administrator/empty-repo 200 OK in 727.608µs
2021/07/15 16:52:08 Started POST /api/internal/hook/post-receive/administrator/empty-repo for 127.0.0.1:45960
2021/07/15 16:52:08 Completed POST /api/internal/hook/post-receive/administrator/empty-repo 200 OK in 707.988µs
2021/07/15 16:52:08 Started POST /api/internal/hook/set-default-branch/administrator/empty-repo/master for 127.0.0.1:45962
2021/07/15 16:52:08 Completed POST /api/internal/hook/set-default-branch/administrator/empty-repo/master 200 OK in 11.59684ms
2021/07/15 16:52:08 Started POST /api/internal/ssh/1/update/2 for 127.0.0.1:45964
2021/07/15 16:52:08 Completed POST /api/internal/ssh/1/update/2 200 OK in 6.631314ms
Received disconnect from 172.17.0.1 port 43538:11: disconnected by user
Disconnected from user git 172.17.0.1 port 43538

If you do not see:

2021/07/15 16:52:08 Started POST /api/internal/hook/pre-receive/administrator/empty-repo for 127.0.0.1:45958
2021/07/15 16:52:08 Completed POST /api/internal/hook/pre-receive/administrator/empty-repo 200 OK in 727.608µs
2021/07/15 16:52:08 Started POST /api/internal/hook/post-receive/administrator/empty-repo for 127.0.0.1:45960
2021/07/15 16:52:08 Completed POST /api/internal/hook/post-receive/administrator/empty-repo 200 OK in 707.988µs

Then the communication between the git repository hooks and the running gitea process is not working.

In recent times this has most commonly been occurring because your repositories are mounted on a noexec partition which will not work for gitea.

@Xenolphthalein
Copy link

Xenolphthalein commented Jul 15, 2021

@zeripath
as i already said, everything is working as expected if i create a new docker container with the 1.14.4 tag.

I am running it on my test machine with ubuntu 20.04.2 LTS.
The partition for the data directory of the docker image is located in the home directory of my root user on this test machine, which is not noexec. Between the tests the data directory gets purged (no old config files or anything like that).

But as a matter of fact, i can't see the hook execution as you have stated in your post above.

server_1  | Accepted publickey for git from ############ port 54088 ssh2: ED25519 #################
server_1  | 2021/07/15 21:44:34 Started GET /api/internal/serv/command/1/test/test?mode=2&verb=git-receive-pack for 127.0.0.1:43784
server_1  | 2021/07/15 21:44:34 Completed GET /api/internal/serv/command/1/test/test?mode=2&verb=git-receive-pack 200 OK in 3.089042ms
server_1  | 2021/07/15 21:44:35 Started POST /api/internal/ssh/1/update/4 for 127.0.0.1:43786
server_1  | 2021/07/15 21:44:35 Completed POST /api/internal/ssh/1/update/4 200 OK in 4.432903ms
server_1  | Received disconnect from ############ port 54088:11: disconnected by user
server_1  | Disconnected from user git ############# port 54088```

@zeripath
Copy link
Contributor

When you do the git push gitea will normally tell you about what refs it's sending up - do you see that information?

If not the hooks aren't running and this is a noexec issue - not sure what will have changed but something either permissions or noexec is stopping them from running.

If you do then this is a configuration issue and the hooks are communicating with a different gitea...

You can add echo statements in $ROOT/owner/repo.git/hooks/pre-receive to try to figure out what's happening.

@Xenolphthalein
Copy link

Output of git push:

-> % git push -u origin master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 254 bytes | 254.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To ssh://git.xxxx.xx:222/test/test.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

Working directory of gitea:
/root/gitea/data

Output of mount | grep noexec :

sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,noexec,relatime,size=30841016k,nr_inodes=7710254,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=6173936k,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/rdma type cgroup (rw,nosuid,nodev,noexec,relatime,rdma)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)

Permissions of hooks of the test/test repository (/root/gitea/data/git/repositories/test/test.git/hooks):

-rwxr-xr-x 1 1000 1000  478 Jul 15 21:44 applypatch-msg.sample
-rwxr-xr-x 1 1000 1000  896 Jul 15 21:44 commit-msg.sample
-rwxr-xr-x 1 1000 1000  327 Jul 15 21:44 post-receive
drwxr-xr-x 2 1000 1000 4.0K Jul 15 21:44 post-receive.d
-rwxr-xr-x 1 1000 1000  189 Jul 15 21:44 post-update.sample
-rwxr-xr-x 1 1000 1000  424 Jul 15 21:44 pre-applypatch.sample
-rwxr-xr-x 1 1000 1000 1.7K Jul 15 21:44 pre-commit.sample
-rwxr-xr-x 1 1000 1000  416 Jul 15 21:44 pre-merge-commit.sample
-rwxr-xr-x 1 1000 1000 1.5K Jul 15 21:44 prepare-commit-msg.sample
-rwxr-xr-x 1 1000 1000 1.4K Jul 15 21:44 pre-push.sample
-rwxr-xr-x 1 1000 1000 4.8K Jul 15 21:44 pre-rebase.sample
-rwxr-xr-x 1 1000 1000  327 Jul 15 21:44 pre-receive
drwxr-xr-x 2 1000 1000 4.0K Jul 15 21:44 pre-receive.d
-rwxr-xr-x 1 1000 1000  544 Jul 15 21:44 pre-receive.sample
-rwxr-xr-x 1 1000 1000 2.8K Jul 15 21:44 push-to-checkout.sample
-rwxr-xr-x 1 1000 1000  307 Jul 15 21:44 update
drwxr-xr-x 2 1000 1000 4.0K Jul 15 21:44 update.d
-rwxr-xr-x 1 1000 1000 3.6K Jul 15 21:44 update.sample

The config i use is the default config, only customized by the gitea installer.
The docker-compose configuration is the one mentioned here: https://docs.gitea.io/en-us/install-with-docker/

And i can't stress enough that the old tag is working just fine.

@zeripath
Copy link
Contributor

Output of git push:

-> % git push -u origin master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 254 bytes | 254.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To ssh://git.xxxx.xx:222/test/test.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

So the hooks aren't running ...

Output of mount | grep noexec

... then it's not being mounted noexec by the docker container - but that does not rule out noexec or capabilities/permissions issues.

Permissions of hooks of the test/test repository (/root/gitea/data/git/repositories/test/test.git/hooks):

This wasn't the kind of permission I was thinking of.

There was an issue in Arch whereby because our pre-receive scritpt used cat its default permissions environment meant that the cat call failed immediately and the script was killed.

I was wondering about that kind of permissions problem.

The docker-compose configuration is the one mentioned here: https://docs.gitea.io/en-us/install-with-docker/

Ah... I wasn't aware that you were running a compose environment - my test was to simply do a docker pull gitea/gitea:latest & docker run gitea/gitea:latest - that worked for me.

This means suspicion should head to the compose configuration.

However it would be helpful to make some small edits to the pre-receive hook to attempt to check if the issue is a noexec or a crash instead.


The pre-receive should look a like:

#!/usr/bin/env bash
data=$(cat)
exitcodes=""
hookname=$(basename $0)
GIT_DIR=${GIT_DIR:-$(dirname $0)}

for hook in ${GIT_DIR}/hooks/${hookname}.d/*; do
test -x "${hook}" && test -f "${hook}" || continue
echo "${data}" | "${hook}"
exitcodes="${exitcodes} $?"
done

for i in ${exitcodes}; do
[ ${i} -eq 0 ] || exit ${i}
done

if you edit this file to:

#!/usr/bin/env bash
echo "Pre-receive: pre cat"
data=$(cat)
echo "Pre-receive: Data ${data}"
exitcodes=""
hookname=$(basename $0)
GIT_DIR=${GIT_DIR:-$(dirname $0)}

for hook in ${GIT_DIR}/hooks/${hookname}.d/*; do
echo "Pre-receive: looking at ${hook}"
test -x "${hook}" && test -f "${hook}" || continue
echo "Pre-receive: running ${hook}"
echo "${data}" | "${hook}"
exitcodes="${exitcodes} $?"
done

for i in ${exitcodes}; do
[ ${i} -eq 0 ] || exit ${i}
done

Then push again and we should be able to see if even the pre-receive hook runs.


One thing to double check is that bash is actually installed on your docker compose too.


Following on from that you should then take a look at the pre-receive.d/gitea and double check that that looks right and that gitea hook is executable.

@Xenolphthalein
Copy link

One thing to double check is that bash is actually installed on your docker compose too.

As the docker image is not managed by me i do not decide which software is installed and which is not. If it is not installed but needed then it's clearly a misconfigured image.
But i did check it:

docker exec -it gitea_server_1 /bin/bash
bash-5.1# 

Then push again and we should be able to see if even the pre-receive hook runs.

Done Output is now as follows:

Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 254 bytes | 254.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: Pre-receive: pre cat
remote: Pre-receive: Data 0000000000000000000000000000000000000000 4663951770225d5162fd6054eb5ca8e2717a5447 refs/heads/master
remote: Pre-receive: looking at ./hooks/pre-receive.d/gitea
To ssh://git.xxxx.xx:222/test/test.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.
updating local tracking ref 'refs/remotes/origin/master'

So the scripts are running.

Following on from that you should then take a look at the pre-receive.d/gitea and double check that that looks right and that gitea hook is executable.

-rwxr-xr-x 1 1000 1000 88 Jul 15 22:59 gitea

Adding a line to this file which echoes something did not appear while pushing again.

@zeripath
Copy link
Contributor

zeripath commented Jul 15, 2021

So in your echos we see:

remote: Pre-receive: looking at ./hooks/pre-receive.d/gitea

But not:

remote: Pre-receive: running ./hooks/pre-receive.d/gitea

Which strangely means that:

test -x "${hook}" && test -f "${hook}" || continue

Is failing and so the gitea hook script is not running.

I guess more echos are called for to work out which one of those tests is failing

@techknowlogick
Copy link
Member

@Xenolphthalein can you run docker info and return the output? we switched to alpine:3.14 as a base image, and some older versions of docker may not play nicely with syscalls

@zeripath
Copy link
Contributor

zeripath commented Jul 15, 2021

I've just tried the compose route: (docker-compose version 1.29.2, build 5becea4c on 1.15.0+dev-582-g3dcb3e907 and still can't reproduce this.

docker-compose.yml
version: "3"

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:latest
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3000:3000"
      - "2222:22"
app.ini
APP_NAME = Gitea: Git with a cup of tea
RUN_MODE = prod
RUN_USER = git

[repository]
ROOT = /data/git/repositories

[repository.local]
LOCAL_COPY_PATH = /data/gitea/tmp/local-repo

[repository.upload]
TEMP_PATH = /data/gitea/uploads

[server]
APP_DATA_PATH    = /data/gitea
DOMAIN           = localhost
SSH_DOMAIN       = localhost
HTTP_PORT        = 3000
ROOT_URL         = http://localhost:3000/
DISABLE_SSH      = false
SSH_PORT         = 2222
SSH_LISTEN_PORT  = 22
LFS_START_SERVER = true
LFS_CONTENT_PATH = /data/git/lfs
LFS_JWT_SECRET   = xxxx
OFFLINE_MODE     = false

[database]
PATH     = /data/gitea/gitea.db
DB_TYPE  = sqlite3
HOST     = localhost:3306
NAME     = gitea
USER     = root
PASSWD   = 
LOG_SQL  = false
SCHEMA   = 
SSL_MODE = disable
CHARSET  = utf8

[indexer]
ISSUE_INDEXER_PATH = /data/gitea/indexers/issues.bleve

[session]
PROVIDER_CONFIG = /data/gitea/sessions
PROVIDER        = file

[picture]
AVATAR_UPLOAD_PATH            = /data/gitea/avatars
REPOSITORY_AVATAR_UPLOAD_PATH = /data/gitea/repo-avatars
DISABLE_GRAVATAR              = false
ENABLE_FEDERATED_AVATAR       = true

[attachment]
PATH = /data/gitea/attachments

[log]
MODE      = console
LEVEL     = info
ROUTER    = console
ROOT_PATH = /data/gitea/log

[security]
INSTALL_LOCK                  = true
SECRET_KEY                    = xxxx
REVERSE_PROXY_LIMIT           = 1
REVERSE_PROXY_TRUSTED_PROXIES = *
INTERNAL_TOKEN                = xxx
PASSWORD_HASH_ALGO            = pbkdf2

[service]
DISABLE_REGISTRATION              = false
REQUIRE_SIGNIN_VIEW               = false
REGISTER_EMAIL_CONFIRM            = false
ENABLE_NOTIFY_MAIL                = false
ALLOW_ONLY_EXTERNAL_REGISTRATION  = false
ENABLE_CAPTCHA                    = false
DEFAULT_KEEP_EMAIL_PRIVATE        = false
DEFAULT_ALLOW_CREATE_ORGANIZATION = true
DEFAULT_ENABLE_TIMETRACKING       = true
NO_REPLY_ADDRESS                  = noreply.localhost

[mailer]
ENABLED = false

[openid]
ENABLE_OPENID_SIGNIN = true
ENABLE_OPENID_SIGNUP = true
`docker version`
Client:
 Version:           20.10.2
 API version:       1.41
 Go version:        go1.13.8
 Git commit:        20.10.2-0ubuntu1~20.04.2
 Built:             Tue Mar 30 21:24:57 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server:
 Engine:
  Version:          20.10.2
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.13.8
  Git commit:       20.10.2-0ubuntu1~20.04.2
  Built:            Mon Mar 29 19:10:09 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.4-0ubuntu1~20.04.2
  GitCommit:        
 runc:
  Version:          1.0.0~rc95-0ubuntu1~20.04.1
  GitCommit:        
 docker-init:
  Version:          0.19.0
  GitCommit:        

I'm really confused as to what is going on here.

@zeripath
Copy link
Contributor

zeripath commented Jul 15, 2021

But I can see that try.gitea.io isn't working! For both http and ssh pushing.

@techknowlogick
Copy link
Member

This is `docker version` info from try
Client: Docker Engine - Community
 Version:           19.03.11
 API version:       1.40
 Go version:        go1.13.10
 Git commit:        42e35e61f3
 Built:             Mon Jun  1 09:12:41 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.11
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.10
  Git commit:       42e35e61f3
  Built:            Mon Jun  1 09:11:15 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

Sooo... this means if we stick with alpine 3.14 then we need to note the minimum version of docker required. Here are minimum requirements: https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.14.0#faccessat2

@zeripath
Copy link
Contributor

zeripath commented Jul 16, 2021

So... it is the alpine 3.14 PR then and it was a capabilities/permissions issue.

I think we probably have to revert the alpine 3.14 PR - and move that to later in 1.16. Then we can deprecate docker 19 this cycle and make the break in 1.16.

@techknowlogick
Copy link
Member

@zeripath yeah :( That's probably the best direction. I'll send the PRs

@zeripath
Copy link
Contributor

whilst you're at it you could approve the three PRs I just dropped fixing some of my own earlier stupidity!

@techknowlogick
Copy link
Member

my own earlier stupidity!

I mean, others missed it too, so... but this was an easy thing to miss so I wouldn't beat yourself up over it.

@techknowlogick
Copy link
Member

PR sent. thanks to everyone who reported this issue and for providing detailed follow up information so we could trace where this was happening.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants