user4889345
user4889345

Reputation:

Change permissions of folder and its contents

I initially use the git module to download a repo as root user and then need to change the ownership from root to jenkins.

The entire git repo and its contents are owned by root

jenkins@ebdfa64dcac0:/usr/share/kaniko$ ls -tlrh
total 172K
drwxr-xr-x  9 root root 4.0K Apr 25 19:12 vendor
-rwxr-xr-x  1 root root 1.4K Apr 25 19:12 test.sh
drwxr-xr-x 15 root root 4.0K Apr 25 19:12 pkg
drwxr-xr-x  2 root root 4.0K Apr 25 19:12 logo
-rwxr-xr-x  1 root root 1.6K Apr 25 19:12 integration-test.sh
drwxr-xr-x  4 root root 4.0K Apr 25 19:12 hack
drwxr-xr-x  2 root root 4.0K Apr 25 19:12 files
drwxr-xr-x  2 root root 4.0K Apr 25 19:12 examples
drwxr-xr-x  2 root root 4.0K Apr 25 19:12 docs
drwxr-xr-x  2 root root 4.0K Apr 25 19:12 deploy
-rw-r--r--  1 root root 4.4K Apr 25 19:12 code-of-conduct.md
drwxr-xr-x  4 root root 4.0K Apr 25 19:12 cmd
-rwxr-xr-x  1 root root  757 Apr 25 19:12 benchmark.sh
-rw-r--r--  1 root root 1.9K Apr 25 19:12 Makefile
-rw-r--r--  1 root root  107 Apr 25 19:12 MAINTAINERS
-rw-r--r--  1 root root  12K Apr 25 19:12 LICENSE
-rw-r--r--  1 root root 4.8K Apr 25 19:12 DEVELOPMENT.md
-rw-r--r--  1 root root 2.8K Apr 25 19:12 CONTRIBUTING.md
-rw-r--r--  1 root root  12K Apr 25 19:12 CHANGELOG.md
drwxr-xr-x  2 root root 4.0K Apr 25 19:12 testutil
-rwxr-xr-x  1 root root 1.2K Apr 25 19:12 run_in_docker.sh
drwxr-xr-x  5 root root 4.0K Apr 25 19:12 integration
-rw-r--r--  1 root root  20K Apr 25 19:12 README.md
-rw-r--r--  1 root root 1020 Apr 25 19:12 Gopkg.toml
-rw-r--r--  1 root root  33K Apr 25 19:12 Gopkg.lock

So I want to use ansible to change the ownership of /usr/share/kaniko and its contents to jenkins

So this is what ive done

- name: Fix /usr/share/kaniko permissions.
  file: 
    path: /usr/share/kaniko
    owner: jenkins
    group: jenkins
    recurse: yes

If I omit recurse: yes, the ownership of the folder only changes and not its contents. But when I use recurse: yes, I get :

TASK [kaniko : Fix /usr/share/kaniko permissions.] *****************************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: OSError: [Errno 36] File name too long: '/usr/share/kaniko/vendor/github.com/coreos/etcd/cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../raft/raftpb/raft.pb.go'
fatal: [localhost]: FAILED! => {"changed": false, "module_stderr": "Traceback (most recent call last):\n File \"/root/.ansible/tmp/ansible-tmp-1556219696.49-253376871940545/AnsiballZ_file.py\", line 113, in \n _ansiballz_main()\n File \"/root/.ansible/tmp/ansible-tmp-1556219696.49-253376871940545/AnsiballZ_file.py\", line 105, in _ansiballz_main\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n File \"/root/.ansible/tmp/ansible-tmp-1556219696.49-253376871940545/AnsiballZ_file.py\", line 48, in invoke_module\n imp.load_module('main', mod, module, MOD_DESC)\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 885, in \n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 871, in main\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 593, in ensure_directory\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 310, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/main.py\", line 294, in recursive_set_attributes\n File \"/tmp/ansible_file_payload_DACkt8/ansible_file_payload.zip/ansible/module_utils/basic.py\", line 1541, in set_fs_attributes_if_different\n File \"/tmp/ansible_file_payload_DACkt8/ansible_file_payload.zip/ansible/module_utils/basic.py\", line 1193, in set_owner_if_different\n File \"/tmp/ansible_file_payload_DACkt8/ansible_file_payload.zip/ansible/module_utils/basic.py\", line 1088, in user_and_group\nOSError: [Errno 36] File name too long: '/usr/share/kaniko/vendor/github.com/coreos/etcd/cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/../cmd/

What am I missing here ?

Upvotes: 0

Views: 236

Answers (1)

larsks
larsks

Reputation: 312028

It looks like there is a circular link on your filesystem. By default, Ansible follows all symlinks when you have recurse: true. You probably want to set follow: false:

- name: Fix /usr/share/kaniko permissions.
  file: 
    path: /usr/share/kaniko
    owner: jenkins
    group: jenkins
    recurse: true
    follow: false

If you'd like more detail, consider this simple example. Create a directory named topdir, cd into it, and then create a link named topdir to ..:

mkdir topdir
cd topdir
ln -s .. topdir

Now, try this:

cd topdir

Or this:

cd topdir/topdir

Or this:

cd topdir/topdir/topdir/topdir/topdir/topdir/topdir/topdir

That is what Ansible has encountered (and this is why many tools by default do not follow symlinks).

Upvotes: 2

Related Questions