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

TypeError: Cannot read property 'avatar_url' or null #4

Open
mpconte opened this issue Sep 8, 2020 · 39 comments
Open

TypeError: Cannot read property 'avatar_url' or null #4

mpconte opened this issue Sep 8, 2020 · 39 comments
Assignees
Labels
bug Something isn't working

Comments

@mpconte
Copy link

mpconte commented Sep 8, 2020

Hello,

I can't reproduce this all the time, but maybe every other time I get the following error:

TypeError: Cannot read property 'avatar_url' of null at Object.createMessageCard (C:\Users\rdbot\Desktop\action-runners\pdp_utils\_work\_actions\jdcargile\ms-teams-notification\v1.2\dist\index.js:2341:39) at C:\Users\rdbot\Desktop\action-runners\pdp_utils\_work\_actions\jdcargile\ms-teams-notification\v1.2\dist\index.js:2959:54 at Generator.next (<anonymous>) at fulfilled (C:\Users\rdbot\Desktop\action-runners\pdp_utils\_work\_actions\jdcargile\ms-teams-notification\v1.2\dist\index.js:2906:58) at processTicksAndRejections (internal/process/task_queues.js:93:5) ##[error]Cannot read property 'avatar_url' of null

@jdcargile
Copy link
Owner

@mpconte, do you have a user that is making commits that doesn't have an avatar? I can test this myself, but curious whether you're seeing any consistency from the users who commit who are seeing this issue?

@jdcargile jdcargile added the bug Something isn't working label Sep 8, 2020
@jdcargile jdcargile self-assigned this Sep 8, 2020
@mpconte
Copy link
Author

mpconte commented Sep 8, 2020

Yes, I'm performing the commit and I don't have an avatar in Microsoft Teams and I think someone else makes commits too but does have one. Does an avatar have to be necessary?

@jdcargile
Copy link
Owner

Thanks! I will take a look at this before the end of the week.

@jdcargile
Copy link
Owner

@mpconte, this is referencing the author of the commit in GitHub. I can see that you have an avatar in GitHub. Do you have an automated task that is creating the commits for you when it fails?

@mpconte
Copy link
Author

mpconte commented Sep 9, 2020

@jdcargile My gihub workflow using this action doesn't run on commits (sorry), I have it set as a workflow_dispatch to checkout changes, build and package it and notify microsoft teams at the end if the previous steps succeed.

@vtrusevich-incomm
Copy link

vtrusevich-incomm commented Oct 7, 2020

It looks like the issue is reproduced, when the last commit is made by the user, whose email is not registered in GitHub

@vtrusevich-incomm
Copy link

@jdcargile , I see, that the author is taken from commit here

const author = commit.data.author;
. Looks like it is needed to add some checks on author existence before building the card

@dnepusb2
Copy link
Contributor

Hey, I am running into the same issue....any good news?

@tsposato
Copy link

tsposato commented Dec 17, 2020

I'm also running into this issue, is there any progress on a fix?
Error is here:
TypeError: Cannot read property 'avatar_url' of null
at Object.createMessageCard (/home/runner/work/_actions/jdcargile/ms-teams-notification/v1.2/dist/index.js:2341:39)
at /home/runner/work/_actions/jdcargile/ms-teams-notification/v1.2/dist/index.js:2959:54
at Generator.next ()
at fulfilled (/home/runner/work/_actions/jdcargile/ms-teams-notification/v1.2/dist/index.js:2906:58)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
Error: Cannot read property 'avatar_url' of null

@jdcargile
Copy link
Owner

Thank you all for your comments and questions. What would you suggest we use for the author if it is not found? Should I do a default avatar image or omit the image altogether?

@dnepusb2
Copy link
Contributor

He JD,
Thanks for the quick follow up. From my perspective:

  • Author undefined
  • Default avatar image

Cheers and thanks again!

@tsposato
Copy link

Sounds good to me.

@jdcargile
Copy link
Owner

This is fixed in #7. To pick up the new version, update your action version to use v1.3. See snippet below for more information.

uses: jdcargile/[email protected]

@tsposato
Copy link

I updated to 1.3 but I still received the same error.

@jdcargile
Copy link
Owner

jdcargile commented Dec 18, 2020

I updated to 1.3 but I still received the same error.

@tsposato, can you try using uses: jdcargile/ms-teams-notification (don't provide the version so it grabs master)? If that works I will create another release. I just pushed what I think will fix this finally.

@tsposato
Copy link

tsposato commented Dec 18, 2020

@tsposato, can you try using uses: jdcargile/ms-teams-notification (don't provide the version so it grabs master)? If that works I will create another release. I just pushed what I think will fix this finally.

Will do. Not sure I'll get to test this until Monday as 5pm has rolled around but I'll let you know the outcome as soon as I can.

@tsposato
Copy link

The other weird thing is that the person in question does actually have an avatar set. Unless I'm misunderstanding the way it retrieves an avatar. Is there something strange about how GitHub does things avatar wise I'm not getting?

@jdcargile
Copy link
Owner

This might not be fixed then. Perhaps I need to query the user directly before trying to grab their information. I can look into this more tomorrow.

@tsposato
Copy link

Slightly different error when using master now @jdcargile :

TypeError: Cannot read property 'login' of null
at Object.createMessageCard (/home/runner/work/_actions/jdcargile/ms-teams-notification/master/dist/index.js:2461:85)
at /home/runner/work/_actions/jdcargile/ms-teams-notification/master/dist/index.js:3090:54
at Generator.next ()
at fulfilled (/home/runner/work/_actions/jdcargile/ms-teams-notification/master/dist/index.js:3044:58)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
Error: Cannot read property 'login' of null

@tsposato
Copy link

Ok, so after some more digging it turns out the user had incorrectly spelt their email in their git user.email settings on one of their clients, hence why the user isn't being linked to their github account correctly. I think it should still probably be 'caught' instead of just failing completely though. Maybe just grab the name from the commit message and use that default avatar.

@akshata-kenchanagudd
Copy link

Hi @jdcargile,

Getting the below error when using "uses: jdcargile/ms-teams-notification" instead of uses: jdcargile/[email protected]. Kindly suggest.
The workflow is not valid. .github/workflows/terraform-validate.yml (Line: 182, Col: 17): Expected format {org}/{repo}[/path]@ref. Actual 'jdcargile/ms-teams-notification' Input string was not in a correct format.

@stuartforrest-infinity
Copy link

@jdcargile can you release a v1.4 that includes this commit - 3e536e0?

@gspindev
Copy link

gspindev commented Jul 8, 2021

@jdcargile facing same issue - using v1.3

TypeError: Cannot read property 'avatar_url' of null
at Object.createMessageCard (/home/runner/work/_actions/jdcargile/ms-teams-notification/v1.3/dist/index.js:2446:16)
at /home/runner/work/_actions/jdcargile/ms-teams-notification/v1.3/dist/index.js:3088:54
at Generator.next ()
at fulfilled (/home/runner/work/_actions/jdcargile/ms-teams-notification/v1.3/dist/index.js:3042:58)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
Error: Cannot read property 'avatar_url' of null

@rwetzeler
Copy link

The other weird thing is that the person in question does actually have an avatar set. Unless I'm misunderstanding the way it retrieves an avatar. Is there something strange about how GitHub does things avatar wise I'm not getting?

We experienced this exact problem. When I dug in further, it appears that the author, was different than who committed... that author wasn't registered in GitHub from Name and email, but SSH keys are.. so he is a valid contributor on the repository, but GitHub doesn't recognize the email he committed with (because he didn't add that in his profile), yet his SSH key's re valid to commit.

I propose that if avatar_url fails, you put in a default avatar image, instead of failing the job.

image

@825i
Copy link

825i commented Sep 1, 2021

The other weird thing is that the person in question does actually have an avatar set. Unless I'm misunderstanding the way it retrieves an avatar. Is there something strange about how GitHub does things avatar wise I'm not getting?

We experienced this exact problem. When I dug in further, it appears that the author, was different than who committed... that author wasn't registered in GitHub from Name and email, but SSH keys are.. so he is a valid contributor on the repository, but GitHub doesn't recognize the email he committed with (because he didn't add that in his profile), yet his SSH key's re valid to commit.

I propose that if avatar_url fails, you put in a default avatar image, instead of failing the job.

image

Hi mate, have you got a pull request that shows how to fix this? Most of our users do not have avatars.

@mariam-alexander
Copy link

Is there a fix for this issue yet ?

@lumos94
Copy link

lumos94 commented Dec 7, 2021

same here, started having this issue since yesterday! all was good until suddenly it stopped!
the weird thing is that this happens only to 1 of my projects. in the other projects it works fine!

@dennisgroisman
Copy link

dennisgroisman commented Jan 12, 2022

Having this issue since last week. Looks like 3e536e0 fixes it
@jdcargile ?

@EvgeniyRub
Copy link

anibody fixed this issue already?

@bfernandes-d
Copy link

Any news on this bug ?

@dimitar-cp
Copy link

This started appearing today. Any news on the fix?

@LeonSnajdr
Copy link

LeonSnajdr commented Jul 14, 2022

I looked at the forks and searched for a fix, one fixed the bug in this pre-release https://github.com/TBCTSystems/ms-teams-notification/releases/tag/v1.3.1

@LeonSnajdr
Copy link

Maybe someone can create a pull request if it works for you too.

@silveiratalita
Copy link

silveiratalita commented Jul 14, 2022

try this, for me it works! Only this, and remove other parameters.

  • name: "Microsoft Teams - Notification"
    uses: toko-bifrost/ms-teams-deploy-card@master
    if: always()
    with:
    github-token: ${{ github.token }}
    webhook-uri: ${{ secrets.YOUR_TEAMS_WEBHOOK }}
    timezone: America/Sao_Paulo

@elubikowski
Copy link

You have to have git user configured globally. I was using custom configuration without global settings. Adding as follows fixed the issue.
Obviously provide your values between double-quotes ;)

git config --global user.name "your_username"
git config --global user.email "[email protected]"

@gfrid
Copy link

gfrid commented Jan 31, 2023

this is still not fixed in 1.3 getting the same error, i think the owner of code does not continue to support this code
i will move to another one

TypeError: Cannot read property 'avatar_url' of null
at Object.createMessageCard (/runner/_work/_actions/jdcargile/ms-teams-notification/v1.3/dist/index.js:2446:16)
at /runner/_work/_actions/jdcargile/ms-teams-notification/v1.3/dist/index.js:3088:54
at Generator.next ()
at fulfilled (/runner/_work/_actions/jdcargile/ms-teams-notification/v1.3/dist/index.js:3042:58)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Cannot read property 'avatar_url' of null

@bkagan98
Copy link

bkagan98 commented Mar 1, 2024

Was this avatar_url issue ever fixed? We're still getting this error with v1.3...

@kimbalabhay
Copy link

Was this avatar_url issue ever fixed? We're still getting this error with v1.3...

same here

@nmacri
Copy link

nmacri commented Nov 4, 2024

@bkagan98 @kimbalabhay Confirming that we are seeing the avatar_url issue fixed on v1.4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests