Object reference not set to an instance of an object

Hello, i’m having a problem with my code I think I messed up somewhere i’m not sure why it is not working, maybe someone can help me :

so here is my class Roles, with an under class named Role :

using UnityEngine;
using System.Collections;

public class Roles : MonoBehaviour 
{
	public enum Alignements {Good, Neutral, Bad};
	public enum Camps {Town, Wolf, Solo};

	public class Role
	{
		public string name;
		public string description;

		public Alignements alignement;
		public Camps camp;
	}
	
	public Role wolf = new Role();

	// Initialization
	void Start () 
	{
		wolf.name = "A Werewolf";
		wolf.description = "it's a werewolf blabla bla random text";
		wolf.alignement = Alignements.Bad;
		wolf.camp = Camps.Wolf;
	}

	public Role getRole()
	{
		return wolf;
	}
}

i wanted to retrieve the instantiation of wolf using the getRole() here under another object,

so this is the script on the other object wich cause the exception :

using UnityEngine;
using System.Collections;

public class InGameData : MonoBehaviour 
{
	// ...
	void Update () 
	{
		Debug.Log(GameObject.FindGameObjectWithTag("GameController").GetComponent<Roles>().getRole().description);
	}
}

pretty sure I messed up

Oh my god i’m so dumb, i just forgot to tag my “GameController”